परिचय
एक इनपुट स्ट्रिंग का एक पैलिंड्रोमिक बंद होना सबसे छोटा पैलिंड्रोम है जिसका निर्माण इनपुट स्ट्रिंग से किया जा सकता है, जहां अंतिम पैलेंड्रोम इनपुट स्ट्रिंग से शुरू होता है।
इस चुनौती के लिए, हम इस तरह के एक दो-तरफ़ा विखंडन को बंद करने पर विचार करेंगे
- इनपुट स्ट्रिंग के साथ बाईं पलिंड्रोमिक क्लोजर संभव सबसे कम पैलिंड्रोम है जो इनपुट स्ट्रिंग से शुरू होता है।
- एक इनपुट स्ट्रिंग का राइट पैलिंड्रोमिक क्लोजर सबसे कम संभव है जो इनपुट स्ट्रिंग के साथ समाप्त होता है।
- इनपुट स्ट्रिंग के दो-तरफ़ा पलिंड्रोमिक क्लोज़िंग , इनपुट स्ट्रिंग के बाएँ या दाएँ पैलिंड्रोमिक क्लोज़र में से किसी एक से छोटा होता है।
कार्य
आपका कार्य सरल है। एक स्ट्रिंग (केवल मुद्रण योग्य ASCII, नई लाइनों और सफेद रिक्त स्थान) को देखते हुए, उस स्ट्रिंग के दो-तरफा पलिंडोमिक बंद होने का उत्पादन करता है। टाई के मामले में, बाएं या दाएं पलिंडोमिक क्लोजर में से कोई भी वैध आउटपुट है।
आप STDIN (या निकटतम विकल्प), कमांड-लाइन तर्क या फ़ंक्शन तर्क के माध्यम से इनपुट लेते हुए, एक प्रोग्राम या फ़ंक्शन लिख सकते हैं, और परिणाम को STDOUT (या निकटतम विकल्प) पर प्रिंट कर सकते हैं या इसे एक स्ट्रिंग के रूप में वापस कर सकते हैं।
आप मान सकते हैं कि इनपुट कभी भी रिक्त स्ट्रिंग नहीं होगी।
कुछ उदाहरण:
<Input> -> <Output>
"abcdef" -> "abcdefedcba" (or "fedcbabcdef")
"abcba" -> "abcba"
"abcb" -> "abcba"
"cbca" -> "acbca"
प्रारंभिक आइडिया का श्रेय VisualMelon को जाता है, मार्टिन और जर्बर्ग की मदद से अंतिम विचार
पैलिंड्रोमिक क्लोजर, लेफ्ट-पेलिंड्रोमिक क्लोजर और राईट-पेलिंड्रोमिक क्लोजर शब्द का उपयोग पहली बार इस पेपर द्वारा किया गया था ।