मैं प्यार> <>,> <> जीवन है! 2 डी लैंगेज अद्भुत हैं! इस चुनौती में, आपको यह कहना होगा कि कोड-गोल्फ करते समय "फिश" सड़क का अंत होता है या नहीं।
परिभाषा
टाइलों के साथ एक मत्स्य सड़क बनाई जाती है, जिसमें निम्नलिखित शामिल हैं:
v (go down)
> (go right)
^ (go up)
< (go left)
/ (mirror)
\ (mirror)
किसी भी अन्य चरित्र (को छोड़कर -|+) को सड़क की सीमा पर कुछ फूलों (या मछली के सिर) की तरह एक विकर्षण माना जा सकता है।
एक सड़क हमेशा एक आयताकार ग्रिड के ऊपरी-बाएँ कोने पर शुरू होती है, -|+प्रतीकों द्वारा सीमांकित । सड़क का एक छोर है अगर, इसका अनुसरण करके, आप एक सीमा पर समाप्त होते हैं, अन्यथा, आप एक अनंत रास्ते में फंस जाएंगे।
सड़क पर अपना रास्ता खोजने के लिए v>^<और दर्पण द्वारा दिए गए निर्देशों का पालन करके पूरा किया जाता है । एक दर्पण 90 ° से परावर्तित करेगा, जहाँ पर आप निर्भर थे। यहां बताया गया है कि यह कैसे काम करता है ( v>^<निर्देशों को दिखाने के लिए):
^ ^
>/< >\<
v v
</> <\>
^ ^
यदि यह समाप्त होता है तो एक सड़क इस तरह दिख रही होगी:
+--------------------+
|>\/ this way >\/> | this one ends here
| v^ \/ |
| v^ ^.^ |
| \/\ >v |
| /\/ ^< |
+--------------------+
एक अनंत लूप:
+--------+
|>>\ This|
|\\ is |
| \\ a |
| \ /trap|
+--------+
विशिष्ट तथ्य
एक सड़क जरूरी नहीं कि केवल निर्देशों से युक्त हो। इसे पूरा करने के लिए रिक्त स्थान या अक्षरों का उपयोग किया जा सकता है। इसका मतलब है कि आपको उसी दिशा में आगे बढ़ना है, जब आप किसी पात्र को पार करते हैं <v^>-|।
हमेशा v>^<ऊपरी-बाएँ कोने में से एक होगा , <या ^इसका अर्थ है कि यह सड़क समाप्त होती है।
आप एक स्ट्रिंग को पैरामीटर के रूप में एक फ़ंक्शन या एसटीडीआईएन का उपयोग करके एक स्टैंडअलोन प्रोग्राम प्रस्तुत कर सकते हैं / जो आपकी भाषा में निकटतम विकल्प है।
आपके जमा होने पर वापस लौटना चाहिए या एसटीडी के बारे में सच्चाई / झूठे मूल्यों पर प्रिंट करना चाहिए। सत्य मूल्यों का अर्थ है कि सड़क का अंत है, जबकि मिथ्या का अर्थ है कि यह एक अनंत लूप है।
परीक्षण के मामलों
+--------------------+
|>\/ this way >\/> | this one ends here
| v^ \/ |
| v^ ^.^ |
| \/\ >v |
| /\/ ><> ^< |
+--------------------+
True
+--------+
|>>\ This|
|\\ is |
| \\ a |
| \ /trap|
+--------+
False
+--+
|<v|
|^<|
+--+
True
+--+
|>v|
|^<|
+--+
False
+----------+
|v Hello \ |
|\\/\/ / |
| \/\\ \ |
|/ // >\ |
| ^/\>\\/ |
|\ /\/\/ |
+----------+
False
+-----+
|>\/\\|
|//\\/|
|\/\\\|
|//\//|
|\/\/ |
+-----+
True
2 test cases added as suggested by @MartinBüttner
+----+
|v |
|\\ |
|//\ |
|\\v |
| \/ |
+----+
False
+----+
|v |
|\\ |
|//\ |
|\\^ |
| \/ |
+----+
False
Test case inspired by @ETHproductions
+-------------------------+
|><> |
|something smells fishy...|
+-------------------------+
False
मानक कमियां निषिद्ध हैं (हमेशा की तरह)।
विजेता बाइट्स में सबसे छोटा कोड वाला होगा। (यह एक> <> जवाब :) देखने के लिए अद्भुत होगा)