आपका मिशन, क्या आपको इसे स्वीकार करना चाहिए, किसी दिए गए स्ट्रिंग को बनाने के लिए न्यूनतम संख्या में कोष्ठक, ब्रेसिज़ और कोष्ठक जोड़ना है (केवल कोष्ठक, ब्रेस और कोष्ठक युक्त) में सही ब्रेस मिलान है। जोड़े गए प्रतीकों के संबंधों को जोड़ा ब्रेसिज़ के बीच अधिकतम दूरी होने से तोड़ना चाहिए। आपको केवल एक सही उत्तर देना होगा जो इन दोनों नियमों से मेल खाता है; इसके अलावा, क्या उन्हें अस्तित्व में होना चाहिए, किसी भी तरह से आपको फिट देखा जा सकता है।
उदाहरण:
input output
// Empty String is a legal input
[ [] // Boring example
[()] [()] // Do nothing if there's nothing to be done
({{ ({{}}) // NOT (){}{} (0 + 0 + 0). Maximum distance is 4 + 2 + 0, ({{}})
[([{])]} {[([{}])]} // NOT [([])]{[([])]} or similar
आप एक प्रोग्राम या फ़ंक्शन लिख सकते हैं , अपने फ़ंक्शन के लिए एक स्ट्रिंग तर्क के रूप में STDIN के माध्यम से इनपुट प्राप्त करता है, जो आउटपुट को एक स्ट्रिंग के रूप में देता है या इसे STDOUT (या निकटतम विकल्प) पर प्रिंट करता है। आप वैकल्पिक रूप से आउटपुट में एक एकल अनुगामी न्यूलाइन शामिल कर सकते हैं।
आप मान सकते हैं कि इनपुट स्ट्रिंग में केवल निम्नलिखित 6 अक्षर हैं (या इसकी कमी है): [](){}
(आपको समर्थन करने की आवश्यकता नहीं है <>
)
यह कोड-गोल्फ , सबसे छोटा कार्यक्रम जीत है। मानक कमियां निश्चित रूप से प्रतिबंधित हैं ।