आज आपकी चुनौती एक अभिव्यक्ति के सभी संभव पूर्ण कोष्ठक का निर्माण करना है।
आपका इनपुट प्रिंट करने योग्य ASCII की एक एकल पंक्ति है जिसमें ऑपरेटरों द्वारा एक या एक से अधिक शब्द हैं। इनपुट में रिक्त स्थान भी हो सकते हैं - आपको इन पर ध्यान नहीं देना चाहिए। एक शब्द है [a-zA-Z0-9]
, एक ऑपरेटर है [^ ()a-zA-Z0-9]
। आप मान सकते हैं कि इनपुट हमेशा मान्य है।
वैकल्पिक अनुरेखण न्यूलाइन के साथ newlines द्वारा अलग-अलग दिए गए अभिव्यक्ति को पूरी तरह से छोटा करने के लिए सभी संभव तरीकों को आउटपुट करें।
क्या नहीं :
- कोष्ठक की शर्तें - केवल ऑपरेटरों के आसपास कोष्ठक।
- शर्तों को फिर से व्यवस्थित करें।
- किसी भी रिक्त स्थान को आउटपुट करें।
उदाहरण इनपुट / आउटपुट:
N
N
a * b
(a*b)
x_x_0
(x_(x_0))
((x_x)_0)
a * b|c|d
(a*(b|(c|d)))
(a*((b|c)|d))
((a*b)|(c|d))
((a*(b|c))|d)
(((a*b)|c)|d)
बाइट्स में सबसे छोटा कोड जीतता है।
!
रेगेक्स फिट बैठता है, इसलिए ↑
, हालांकि ↑
इनपुट का हिस्सा नहीं हो सकता है क्योंकि यह मुद्रण योग्य एएससीआईआई नहीं है।
!
एक ऑपरेटर? किस बारे में↑
?