假设我们有一个仅包含两个字符a和b的小写字符串s。我们必须检查是否每组连续的a后面都是长度相等的连续的b组。
因此,如果输入类似于s =“ abaaabbbaabbaabbab”,则输出将为True,因为所有组均为(ab),(aaabbb),(aabb),(aabb),(ab)。
让我们看下面的实现以更好地理解-
def solve(s): a_count = 0 string_len = len(s) i = 0 while i < string_len: while i < string_len and s[i] == 'a': a_count += 1 i += 1 while i < string_len and s[i] == 'b': a_count -= 1 i += 1 if a_count != 0: return False return True s = "abaaabbbaabbaabbab" print(solve(s))
"abaaabbbaabbaabbab"输出结果
True