আপনার কাজটি হ'ল একটি স্ট্রিং কতটা নিখুঁত প্যালিনড্রোম তা নির্ধারণ করা। আপনার সাধারণ প্যালিনড্রোম (যেমন 12321) একটি নিখুঁত প্যালিনড্রোম; এর নিখুঁততা 1।
স্ট্রিংয়ের নিখুঁততা নির্ধারণ করার জন্য, আপনি দেখতে পাচ্ছেন যে প্রতিটি বিভাগটি প্যালিনড্রোম যেখানে আপনি এটি কতগুলি বিভাগে বিভক্ত করতে পারেন। যদি অস্পষ্টতা থাকে যেমন এর সাথে aaaa, আপনি এটিতে বিভক্ত করতে পারেন [aa, aa]বা [aaaa]বা [a, aaa]বা [aaa, a], সংক্ষিপ্ততম সেটটি ওভাররাইড হবে, aaaa1 এর স্কোর দেবে, যা সংক্ষিপ্ততম সেটটির দৈর্ঘ্য।
অতএব, আপনাকে অবশ্যই এমন একটি প্রোগ্রাম বা ফাংশন লিখতে হবে যা একটি খালি খালি ইনপুট গ্রহণ করবে এবং আউটপুট এটি কতটা নিখুঁত হবে (যা সংক্ষিপ্ত সেটটির দৈর্ঘ্য আপনি সেটটিতে প্রতিটি উপাদান একটি প্যালিনড্রোম যেখানে বিভক্ত করতে পারেন)।
উদাহরণ:
1111 -> 1 [1111]
abcb -> 2 [a, bcb]
abcbd -> 3 [a, bcb, d]
abcde -> 5 [a, b, c, d, e]
66a -> 2 [66, a]
abcba-> 1 [abcba]
x -> 1 [x]
ababacab -> 2 [aba, bacab]
bacababa -> 2 [bacab, aba]
26600 -> 3 [2, 66, 00] [my user id] [who has a more perfect user id?]
ababacabBACABABA -> 4 [aba, bacab, BACAB, ABA]
নোট করুন যে উদাহরণগুলিতে বর্গাকার বন্ধনীগুলির মধ্যে থাকা কোনও কিছুই আউটপুটের অংশ হওয়া উচিত নয়।
ababacabএবং এর বিপরীত, bacababaভাল পরীক্ষার কেস বলে মনে হচ্ছে।
ababacabBACABABAএটিও একটি ভাল পরীক্ষার কেস (কিছু উত্তর এতে ব্যর্থ হয়)।