ASCII कला मजेदार है। आधुनिक पाठ संपादक पाठ में हेरफेर करने में बहुत अच्छे हैं। क्या आधुनिक प्रोग्रामिंग भाषाएं कार्य तक हैं?
ASCII कला हेरफेर में एक सामान्य कार्य पाठ को दो वर्णों के बीच एक आयत में क्रॉप करना है। यह वह कार्य है जिसे आपको इस चुनौती में लागू करना चाहिए।
विवरण
आपका कार्यक्रम 3 इनपुट लेगा:
- पहला ब्लॉक का 'स्टार्ट' कैरेक्टर है - टॉप-लेफ्ट कॉर्नर पर
- दूसरा ब्लॉक का 'अंत' अक्षर है - नीचे-दाएं कोने को चिह्नित करना
- तीसरा बहुस्तरीय पाठ का कुछ रूप है, या तो एक तार, या तार की सूची, या फ़ाइल नाम, या जो भी हो
परिणाम बहुस्तरीय पाठ होगा (फिर से, उपरोक्त किसी भी प्रारूप में) दिए गए इनपुट के बीच आयत के लिए फसली। ध्यान दें कि पहले दो इनपुट अद्वितीय नहीं हो सकते हैं।
किनारे के मामले
बक्से में हमेशा कम से कम मात्रा होनी चाहिए 2. इस प्रकार:
() (
)
हैं बक्से लेकिन इन:
)( ) (
( )
नहीं हैं (शुरुआत = (और अंत = के साथ ))।
इनपुट में केवल एक बॉक्स होगा। इस प्रकार प्रारंभ और अंत वर्ण केवल एक बार होने चाहिए, जब तक कि वे एक ही वर्ण न हों जिस स्थिति में उन्हें ठीक दो बार होना चाहिए।
इसके अतिरिक्त इनपुट में प्रत्येक पंक्ति कम से कम तब तक होनी चाहिए जब तक इनपुट में बॉक्स के दाहिने किनारे से लाइन के शुरू होने की दूरी हो।
आपके प्रोग्राम को अमान्य इनपुट को संभालने की आवश्यकता नहीं है; वे अपरिभाषित व्यवहार में परिणाम कर सकते हैं।
नियम
विशिष्ट कोड-गोल्फ नियम लागू होते हैं। सबसे छोटा कोड जीतता है।
उदाहरण
गर्म उजला दिन: start: ( end: ) input:
This is some text
. (but this text
is in a box ).
So only it is important.
आउटपुट:
(but this text
is in a box )
क्षैतिज स्थान के स्ट्रिपिंग पर भी ध्यान दें। ASCII कला फसलें 2d हैं।
बारिश का दिन: start: ( end: ) input:
This is some text (
But is that even )
really a box?
आउटपुट:
(
)
एक ही शुरू / अंत: start: / end: / input:
Oh, I get how this could be useful
/----------------------------\
| All this text is in a box! |
\----------------------------/
आउटपुट:
/----------------------------\
| All this text is in a box! |
\----------------------------/
अमान्य निवेश: start: ( end: ) input:
Boxes are rectangular ( so this has
0 volume ) which is illegal.
अमान्य इनपुट 2: start: ( end: ) input:
(The lines must already be square
so this line that is too short
relative to this end, is illegal)