একটি স্ট্রিং s দেওয়া আছে। এর ক্যারেক্টারগুলো রি-অ্যারেঞ্জ করে প্যালিনড্রোম বানানো সম্ভব কিনা যাচাই করতে হবে।
উদাহরণ
ইনপুট: s = "raaecrc"
আউটপুট: True
ব্যাখ্যা: "racecar" বানানো সম্ভব।
শর্ত
স্ট্রিং দৈর্ঘ্য জোড় হলে সব ক্যারেক্টারের ফ্রিকোয়েন্সি জোড় হতে হবে। বিজোড় দৈর্ঘ্য হলে ঠিক একটি ক্যারেক্টারের ফ্রিকোয়েন্সি বিজোড় হতে পারে।
উদাহরণ কোড
from collections import defaultdict
def solve(st):
freq = defaultdict(int)
for ch in st:
freq[ch] += 1
odd_count = 0
for v in freq.values():
if v % 2 == 1:
odd_count += 1
if odd_count > 1:
return False
return True
s = "raaecrc"
print(solve(s)) # Output: True
ইনপুট
"raaecrc"
আউটপুট
True