ปัญหา
ให้สตริง s ตรวจสอบว่าจัดเรียงตัวอักษรใหม่ได้เป็นพาลินโดรมหรือไม่
เงื่อนไข
สตริงสามารถจัดเป็นพาลินโดรมได้ ⟺ มีตัวอักษรที่มีความถี่คี่ได้สูงสุด 1 ตัว
ตัวอย่าง
s = "raaecrc" → r:2, a:2, e:1, c:2 → มีแค่ 'e' เป็นคี่ → จัดเป็น "racecar" ได้ → True
โค้ดตัวอย่าง
from collections import Counter
def solve(s):
freq = Counter(s)
odd_count = sum(1 for v in freq.values() if v % 2 == 1)
return odd_count <= 1
print(solve("raaecrc")) # True
print(solve("hello")) # False (h,e,l,o → 4 ตัวคี่)
อินพุต / เอาต์พุต
Input: "raaecrc" Output: True