पहचान
अधिकांश फोंट में अपरकेस वर्णमाला के सभी अक्षरों के अलावा BDOएकल लाइनें होती हैं, जो चरित्र के बाउंडिंग रेक्टिंग के चार कोनों में से कुछ को छूती हैं ACEFGHIJKLMNPQRSTUVWXYZ:।
उदाहरण के लिए, एक A"स्पर्श" के दो पैर चरित्र के निचले बाएँ और नीचे दाएं कोने। इसी तरह, Cइसके ऊपरी और निचले दाएं कोनों को छूता है (यह थोड़ा घुमावदार है लेकिन यह काफी करीब है)। Lकेवल एकल पंक्तियों के साथ यह शीर्ष बाएं और नीचे दाएं कोनों को छूता है। के निचले बाएँ कोने में Lएक शीर्ष है, एक पंक्ति का अंत नहीं है।
यहां स्टैक एक्सचेंज फ़ॉन्ट I (और उम्मीद है कि आप) के अनुसार कौन से वर्णों को छूते हैं, इसकी एक तालिका है। 1ऊपरी बाएँ के 2लिए है, ऊपरी दाएँ के लिए है, 3बाएँ बाएँ, 4दाएँ दाएँ।
A: 3 4
C: 2 4
E: 2 4
F: 2 3
G: 2
H: 1 2 3 4
I: 1 2 3 4
J: 1 3
K: 1 2 3 4
L: 1 4
M: 3 4
N: 2 3
P: 3
Q: 4
R: 3 4
S: 2 3
T: 1 2
U: 1 2
V: 1 2
W: 1 2
X: 1 2 3 4
Y: 1 2
Z: 1 4
सेट अप
इन कोने को छूने वाली लाइनों की तरह प्रेटेंड उस कोने की दिशा में विस्तारित होता है जिसे वे स्पर्श करते हैं ताकि ग्रिड पर इन पात्रों की व्यवस्था "कनेक्ट" हो सके।
उदाहरण के लिए, सभी वर्ण
A
C X
जुड़े हुए हैं क्योंकि नीचे की बाईं Aऔर के ऊपरी दाएँ Cकनेक्ट, और के निचले दाएं Aऔर ऊपर के बाएँ Xकनेक्ट।
तथापि,
CAX
कोई कनेक्शन नहीं है क्योंकि कनेक्शन केवल एक वर्ण से दूसरे में तिरछे होते हैं ।
चुनौती
सबसे छोटे प्रोग्राम को (बाइट्स में) लिखें जो कि ACEFGHIJKLMNPQRSTUVWXYZऊपर दिए गए नियमों के अनुसार एक बड़े पूर्ण रूप से जुड़े हुए पेड़ के सभी पात्रों को आउटपुट करता है । प्रत्येक चरित्र को एक बार बिल्कुल दिखाई देना चाहिए। खाली जगह के लिए जगह का उपयोग करें।
उदाहरण
इस 23-अक्षर के पेड़ में सब कुछ ऊपर परिभाषित विकर्ण कनेक्शन के माध्यम से किसी और चीज़ से पहुँचा जा सकता है:
Q
A J R
C U S Y
I M N
E H X
F L T
G Z K P
V W
टिप्पणियाँ
- आप अपना समाधान हार्डकोड कर सकते हैं।
- आपके आउटपुट में केवल
ACEFGHIJKLMNPQRSTUVWXYZस्थान, रिक्त स्थान और newlines होना चाहिए ।BDOउपयोग नहीं किया जाएगा। - जब तक सभी कनेक्शन ठीक से तैनात नहीं हो जाते हैं, लीडिंग / ट्रेलिंग स्पेस ठीक हैं।
- आउटपुट ग्रिड 30 से 30 वर्णों (newlines और रिक्त स्थान सहित) से बड़ा नहीं होना चाहिए।
- केवल कोने कनेक्शन पर विचार किया जाता है। नीचे का हिस्सा
Yकिसी चीज से नहीं जुड़ता। आपको उपरोक्त तालिका से कोने कनेक्शन का उपयोग करना चाहिए। - सभी कनेक्ट करने योग्य कोनों को किसी चीज़ से कनेक्ट करने की आवश्यकता नहीं है। कनेक्ट करने योग्य और गैर-कनेक्ट करने योग्य कोने एक-दूसरे को सीमा दे सकते हैं।
- स्टडआउट के लिए आउटपुट। कोई इनपुट नहीं है।
- पीटर टेलर ने स्लैश के साथ बनाया एक कनेक्टिविटी ग्राफ शामिल करना एक सहायक स्पर्श है, लेकिन इसकी आवश्यकता नहीं है।
अद्यतन:
githubhagocyte ने Github पर एक वर्णमाला ट्री वैधता जाँचकर्ता बना दिया है ।