在 Python 中检查字符串是否遵循 ^nb^n 模式

假设我们有一个字符串 s 我们必须检查该字符串是否遵循模式 a^nb^n 。当 n = 3 时,这实际上是一个字符串,该字符串将是“aaabbb”。

因此,如果输入类似于 s = "aaaaabbbbb",那么输出将为 True,因为它跟在 a^5b^5 之后。

为了解决这个问题,我们将按照以下步骤操作 -

  • 大小 := s 的大小

  • 对于范围为 0 到大小 - 1 的 i,请执行

    • 从循环中出来

    • 如果 s[i] 与 'a' 不同,则

    • 如果 i * 2 与大小不同,则

      • 返回错误

    • 对于在 i 到 size - 1 范围内的 j,执行

      • 返回错误

      • 如果 s[j] 与 'b' 不同,则

    • 返回真

    让我们看看以下实现以获得更好的理解 -

    示例

    def solve(s):
       size = len(s)
       for i in range(size):
          if s[i] != 'a':
             break
       if i * 2 != size:
          return False
       for j in range(i, size):
          if s[j] != 'b':
             return False
       return True
    s = "aaaaabbbbb"
    print(solve(s))

    输入

    "aaaaabbbbb"
    输出结果
    True

    猜你喜欢