यहाँ एक सरल ASCII कला रूबी है :
___
/\_/\
/_/ \_\
\ \_/ /
\/_\/
ASCII रत्न निगम के लिए एक जौहरी के रूप में, आपकी नौकरी नए अधिग्रहीत माणिकों का निरीक्षण करती है और आपके द्वारा पाए जाने वाले किसी भी दोष के बारे में ध्यान दें।
सौभाग्य से, केवल 12 प्रकार के दोष संभव हैं, और आपका आपूर्तिकर्ता गारंटी देता है कि किसी भी रूबी में एक से अधिक दोष नहीं होंगे।
12 दोष 12 भीतरी में से एक के प्रतिस्थापन के अनुरूप _
, /
या \
एक अंतरिक्ष चरित्र (साथ गहरे लाल रंग का के पात्रों )। माणिक की बाहरी परिधि में कभी भी दोष नहीं होते हैं।
दोषों को गिना जाता है जिसके अनुसार आंतरिक चरित्र का स्थान अपनी जगह है:
तो दोष 1 के साथ एक रूबी इस तरह दिखता है:
___
/\_/\
/_/ _\
\ \_/ /
\/_\/
दोष 11 के साथ एक रूबी इस तरह दिखता है:
___
/\_/\
/_/ \_\
\ \_/ /
\ _\/
यह अन्य सभी दोषों के लिए एक ही विचार है।
चुनौती
एक प्रोग्राम या फ़ंक्शन लिखें जो एकल, संभावित रूप से दोषपूर्ण माणिक की स्ट्रिंग में लेता है। दोष संख्या मुद्रित या वापस आनी चाहिए। यदि दोष न हो तो दोष संख्या 0 है।
टेक्स्ट फ़ाइल, स्टडिन या स्ट्रिंग फ़ंक्शन तर्क से इनपुट लें। दोष संख्या लौटाएं या इसे stdout में प्रिंट करें।
आप मान सकते हैं कि रूबी में एक अनुगामी न्यूलाइन है। आप यह नहीं मान सकते हैं कि इसमें कोई अनुगामी स्थान या अग्रणी नई सुर्खियाँ हैं।
बाइट्स में सबसे छोटा कोड जीतता है। ( आसान बाइट काउंटर। )
परीक्षण के मामलों
माणिक के 13 सटीक प्रकार, उनके अपेक्षित आउटपुट के बाद सीधे:
___
/\_/\
/_/ \_\
\ \_/ /
\/_\/
0
___
/\_/\
/_/ _\
\ \_/ /
\/_\/
1
___
/\ /\
/_/ \_\
\ \_/ /
\/_\/
2
___
/\_/\
/_ \_\
\ \_/ /
\/_\/
3
___
/\_/\
/_/ \_\
\ _/ /
\/_\/
4
___
/\_/\
/_/ \_\
\ \ / /
\/_\/
5
___
/\_/\
/_/ \_\
\ \_ /
\/_\/
6
___
/\_/\
/_/ \ \
\ \_/ /
\/_\/
7
___
/\_ \
/_/ \_\
\ \_/ /
\/_\/
8
___
/ _/\
/_/ \_\
\ \_/ /
\/_\/
9
___
/\_/\
/ / \_\
\ \_/ /
\/_\/
10
___
/\_/\
/_/ \_\
\ \_/ /
\ _\/
11
___
/\_/\
/_/ \_\
\ \_/ /
\/_ /
12