एक प्रोग्राम या फ़ंक्शन लिखें जो अंतरिक्ष को छोड़कर मुद्रण योग्य एससीआई वर्णों की एक गैर- रिक्त एकल-पंक्ति स्ट्रिंग में लेता है:
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
आप मान सकते हैं कि इनपुट वैध है।
इनपुट के आधार पर, रिक्त स्थान की एक टेक्स्ट ग्रिड पर व्यवस्थित एक नया स्ट्रिंग ड्रा करें और कछुए ग्राफिक्स -स्कूल नियमों का पालन करते हुए नई रेखाएं बनाएं जहां कछुआ हमेशा एक ग्रिड स्थान पर रहता है और केवल कार्डिनल दिशाओं का सामना कर सकता है।
पाठ स्ट्रिंग के लिए इनपुट स्ट्रिंग में पहला वर्ण प्रिंट करें। कछुआ यहीं से शुरू होता है। इस प्रक्रिया को दोहराते हुए इनपुट स्ट्रिंग में केवल वर्णों के शेष भाग (कछुए के अटकने पर रुकने पर) को मिटाएँ:
यदि 4 ग्रिड स्थान सीधे पड़ोसी कछुए से भरे हुए हैं (अर्थात उनमें से कोई भी एक स्थान नहीं है), इसे रोकना। कछुआ फंस गया है और ग्रिड पूरा हो गया है।
पिछले चरित्र की तुलना में इनपुट में वर्तमान चरित्र को देखें:
यदि वर्तमान वर्ण पिछली बार से पहले है, तो कछुए को बाईं ओर घुमाएं।
यदि वर्तमान वर्ण पहले के बाद लेक्सिक रूप से है, तो कछुए को एक चौथाई मोड़ दाएं घुमाएं।
यदि वर्तमान वर्ण पिछले के बराबर है, तो कछुए को घुमाएं नहीं।
अगर ग्रिड स्पेस कछुए का सामना कर रहा है तो खाली नहीं है (यानी स्पेस नहीं), बार-बार कछुए को तब तक घुमाएं जब तक वह खाली ग्रिड स्पेस का सामना नहीं कर रहा।
कछुए के एक ग्रिड के कदम को उस दिशा में आगे बढ़ाएं जो वह सामना कर रहा है और कछुए के नए स्थान में ग्रिड पर वर्तमान चरित्र को प्रिंट करें।
परिणामी टेक्स्ट ग्रिड स्ट्रिंग को बिना किसी बाहरी रेखा या कॉलम के व्हाट्सएप से प्रिंट या वापस करें। पंक्तियों में गैर-स्थान के साथ सबसे दाहिने स्तंभ तक रिक्त स्थान हो सकते हैं, लेकिन उससे आगे नहीं। एक एकल अनुगामी न्यूलाइन को वैकल्पिक रूप से अनुमति दी जाती है।
बाइट्स में सबसे छोटा कोड जीतता है।
उदाहरण
यहां इनपुट के सभी चरण दिए गए हैं spattuuxze। ^V<>पात्रों दिशा कछुआ सामना कर रहा है दिखाने के लिए, वे कर रहे हैं नहीं इनपुट या आउटपुट का हिस्सा है।
s>
^
p
s
<ap
s
^
t
ap
s
^
t
t
ap
s
tu>
t
ap
s
tuu>
t
ap
s
tuu
t x
apV
s
tuu
<zx
ap
s
इस बिंदु पर कछुआ फंस गया है, इसलिए eकभी भी मुद्रित नहीं होता है और अंतिम आउटपुट है:
tuu
tzx
ap
s
निम्नलिखित एक समान लेकिन अमान्य आउटपुट है क्योंकि इसमें व्हॉट्सएप का अनावश्यक प्रमुख स्तंभ है:
tuu
tzx
ap
s
परीक्षण के मामलों
spattuuxze
tuu
tzx
ap
s
spattuuxxze
tuu
t x
apx
sze
1111111
1111111
ABCDEFGHIJKLMNOP
PEFG
ODAH
NCBI
MLKJ
`_^]\[ZYXWVUTSR
^_RS
\]`UT
[ZWV
YX
Woo!
W
o
o!
woo!
!o
o
w
Wheeee
W
heeee
banana
a
an
an
b
Turtle
T
ure
tl
turTle
e
tTl
ur
(यदि इनमें से कोई भी गलत लगे तो मुझे तुरंत बताएं।)
PONMLKJIHGFEDCBA, क्योंकि परिणाम सिर्फ एक वर्ग नहीं है और ABCDEFGHIJKLMNOPनियमों में विषमता को उजागर करने के लिए इसके विपरीत है।