Giả sử chúng ta có chuỗi s. Cần kiểm tra xem chuỗi này có chứa chuỗi con đối xứng (palindrome) độ dài chẵn hay không.
Ví dụ, s = "afternoon", đầu ra True vì "afternoon" chứa palindrome độ dài chẵn "noon".
Quan sát: một palindrome độ dài chẵn luôn có cặp ký tự giữa giống nhau. Do đó chỉ cần kiểm tra xem có hai ký tự liền kề nào giống nhau hay không.
Các bước giải quyết:
- Duyệt i từ 0 đến độ dài chuỗi - 2:
- Nếu string[i] == string[i+1], trả về True.
- Trả về False.
Xem ví dụ dưới đây để hiểu rõ hơn:
Ví dụ
def solve(string):
for i in range(len(string) - 1):
if string[i] == string[i + 1]:
return True
return False
s = "afternoon"
print(solve(s))
Đầu vào
"afternoon"
Đầu ra
True