แบ่งสตริงยาวจากกลางตรวจสอบว่าครึ่งหนึ่งและอีกครึ่งมีชุดตัวอักษรเหมือนกันหรือไม่ สตริงอาจมีความยาวคี่หรือคู่ ถ้าคู่ แบ่งครึ่งตามความยาว ถ้าคี่ ข้ามตัวอักษรกลางแล้วเปรียบเทียบ
โค้ดตัวอย่าง
from collections import Counter
def comparehalves(input_string):
str_len = len(input_string)
# ถ้าจำนวนตัวอักษรคี่ ข้ามตัวกลาง
if (str_len % 2 != 0):
left = input_string[0:int(str_len / 2)]
right = input_string[(int(str_len / 2)) + 1:]
else:
left = input_string[0:int(str_len / 2)]
right = input_string[int(str_len / 2):]
# แปลงเป็นลิสต์และเรียงลำดับ
l1 = list(left)
l1.sort()
l2 = list(right)
l2.sort()
if l1 == l2:
print("Same character in both halves")
else:
print("Both halves are different")
in_string = input("Enter String: ")
comparehalves(in_string)
ผลลัพธ์
# Run1
Enter String: Tutorials
Both halves are different
# Run2
Enter String: TutTut
Same character in both halves