ধরুন আমাদের একটি স্ট্রিং আছে তা আমাদের পরীক্ষা করতে হবে এর প্যালিনড্রোমিক সাব-স্ট্রিংগুলি বিজোড় দৈর্ঘ্যের কিনা।
সুতরাং, যদি ইনপুটটি s ="লেভেলপম্যাডাম" এর মত হয়, তাহলে আউটপুটটি সত্য হবে কারণ দুটি প্যালিনড্রোমিক সাবস্ট্রিং "লেভেল" এবং "ম্যাডাম" উভয়ই বিজোড় দৈর্ঘ্যের।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- 0 থেকে s আকারের রেঞ্জের জন্য,
- করুন
- temp :=ফাঁকা স্ট্রিং
- j এর জন্য i থেকে s এর পরিসরে, কর
- temp :=temp concatenate s[j]
- যদি temp-এর মাপ জোড় হয় এবং temp প্যালিনড্রোম হয়, তাহলে
- মিথ্যে ফেরত দিন
- সত্য ফেরান
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
উদাহরণ
def is_palindrome(s): return s == s[::-1] def solve(s): for i in range(len(s)): temp = "" for j in range(i, len(s)): temp += s[j] if len(temp) % 2 == 0 and is_palindrome(temp): return False return True s = "levelopmadam" print(solve(s))
ইনপুট
"levelopmadam"
আউটপুট
True