Giả sử chúng ta có một chuỗi s, chúng ta phải kiểm tra xem chuỗi có theo mẫu a ^ nb ^ n hay không. Đây thực sự là một chuỗi khi n =3, chuỗi sẽ là "aaabbb".
Vì vậy, nếu đầu vào là s ="aaaaabbbbb", thì đầu ra sẽ là True như sau a ^ 5b ^ 5.
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
- size:=kích thước của s
- đối với tôi trong phạm vi từ 0 đến kích thước - 1, thực hiện
- nếu s [i] không giống với 'a', thì
- ra khỏi vòng lặp
- nếu s [i] không giống với 'a', thì
- nếu i * 2 không giống với kích thước, thì
- trả về Sai
- cho j trong phạm vi i đến kích thước - 1, thực hiện
- nếu s [j] không giống với 'b', thì
- trả về Sai
- nếu s [j] không giống với 'b', thì
- trả về True
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
Ví dụ
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))
Đầu vào
"aaaaabbbbb"
Đầu ra
True