एक स्ट्रिंग जिसकी लंबाई एक सकारात्मक है त्रिकोणीय संख्या है (1, 3, 6, 10, 15 ...) कुछ रिक्त स्थान और newlines जोड़कर "समतुल्य पाठ त्रिकोण" में व्यवस्थित किया जा सकता है (और इसे एक ही पढ़ने के क्रम में रखते हुए)।
उदाहरण के लिए, लंबाई 10 स्ट्रिंग ABCDEFGHIJ
हो जाती है:
A
B C
D E F
G H I J
एक प्रोग्राम या फ़ंक्शन लिखें जो इस तरह के स्ट्रिंग में लेता है, सिवाय इसके कि इसमें केवल अक्षर होंगे 0
और1
। (आप मान सकते हैं कि इनपुट वैध है।)
परिणामस्वरूप "समबाहु पाठ त्रिकोण" के लिए, आउटपुट (प्रिंट या वापसी) चार संख्याओं में से एक है जो सममित प्रदर्शन के प्रकार को दर्शाता है:
2
यदि त्रिकोण में द्विपक्षीय समरूपता है तो आउटपुट । यानी इसमें किसी भी कोने से विपरीत दिशा के मध्य बिंदु तक समरूपता की एक पंक्ति है।उदाहरण:
0 1 1 1 0 1 0 0 1 0 1 0 1 1 1 1 0 1 0 1 1 1
3
यदि आउटपुट में त्रिभुज सममिति है तो आउटपुट । यानी इसे बिना किसी दृश्य परिवर्तन के 120 ° घुमाया जा सकता है।उदाहरण:
0 1 0 0 1 1 0 1 0 0 0 0 1 1 0 0 0 0 1 0 1 0 1 1 1 1 1 1 1 0 1 0 1 1 1 1 0 1 0 0 1 1 0 0 0 1 0 0 0 0 1 0 0 1 1 1
6
यदि त्रिभुज में दोनों हों तो आउटपुट द्विपक्षीय और घूर्णी समरूपता। यानी यह दोनों के आउटपुट के लिए शर्तों से मेल खाता है2
और3
।उदाहरण:
0 1 0 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0
उत्पादन
1
यदि त्रिकोण में न तो द्विपक्षीय और न ही घूर्णी समरूपता है तो ।उदाहरण:
1 1 0 0 0 0 0 0 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1
बाइट्स में सबसे छोटा कोड जीतता है। टाईब्रेकर पहले जवाब है।
एक वैकल्पिक अनुगामी न्यूलाइन के अलावा, इनपुट स्ट्रिंग में स्थान / न्यूलाइन पैडिंग या संरचना नहीं हो सकती है - यह सादे होना चाहिए 0
और1
के।
यदि आप चाहें तो किसी भी दो अलग-अलग मुद्रण योग्य ASCII वर्णों का उपयोग कर सकते हैं 0
और1
।
परीक्षण के मामलों
उदाहरणों से प्रत्यक्ष लिया।
011 -> 2
101 -> 2
001010 -> 2
1111010111 -> 2
0100110100 -> 3
0011000010 -> 3
101111111010111 -> 3
101001100010000100111 -> 3
0 -> 6
1 -> 6
000 -> 6
100101 -> 6
0000100000 -> 6
110000 -> 1
001101 -> 1
1101111111 -> 1
111111000111111 -> 1
120 ° तक किसी भी इनपुट को "घूर्णन" करने से समान आउटपुट प्राप्त होगा।