चुनौती
चरित्र गिनती द्वारा सबसे छोटा कोड रोबोट को संभवतया सबसे कम चरणों में बिल्ली का बच्चा खोजने में मदद करता है।
गोल्फर्स, यह संकट का समय है - बिल्ली का बच्चा लापता हो गया और इसे खोजने के लिए यह रोबोट का काम है! रोबोट को कम से कम संभव मार्ग में किटन तक पहुंचने की आवश्यकता है। हालांकि, रोबोट के रास्ते में बहुत सारी बाधाएं हैं, और उसे आपके लिए एक समाधान कार्यक्रम की आवश्यकता है।
रोबोट उसके लिए एक कार्यक्रम करता था, लेकिन वह कार्यक्रम खो गया था और रोबोट का कोई बैकअप नहीं था :(
रोबोट का रनटाइम सबसे अच्छा नहीं है, और कम से कम पात्रों को रोबोट को स्रोत कोड से पढ़ना पड़ता है, कम से कम समय यह प्रसंस्करण खर्च करेगा, और इसका मतलब है कि बिल्ली का बच्चा तेजी से मिल जाएगा!
रोबोट की मेमोरी में उस स्थान का एक नक्शा होता है जो वह वर्तमान में उत्तर का प्रतिनिधित्व करने वाले शीर्ष पर है, नीचे दक्षिण का प्रतिनिधित्व करता है, दाएं पूर्व का प्रतिनिधित्व करता है और पश्चिम का प्रतिनिधित्व करता है। रोबोट हमेशा एक अनजान आकार की दीवारों के घेरे वाले आयताकार कमरे में होता है, जिसका प्रतिनिधित्व #
उसके रडार नक्शे में होता है। एक क्षेत्र द्वारा रोबोट का प्रतिनिधित्व किया जा सकता है ।
रोबोट का रडार कमरे में कई बाधाओं के लिए भी स्कैन करता है और उन्हें विभिन्न ASCII पत्रों में चिह्नित करता है। रोबोट उन बाधाओं को पार नहीं कर सकता। रडार Kitten को विशेष ASCII चरित्र के रूप में चिह्नित करेगा K
, जबकि रोबोट के स्थान के साथ चिह्नित है R
।
रोबोट का नेविगेशन सिस्टम इस तरह से काम करता है: वह दिशा की संख्या और आंदोलन इकाइयों की संख्या को समझ सकता है, जो उसे यात्रा करनी चाहिए - उदाहरण के लिए, N 3
'उत्तर 3 आंदोलन इकाइयां'। रोबोट का रडार मैप इस तरह बनाया गया है कि एक संचलन इकाई एक ASCII वर्ण है। रोबोट केवल 4 दिशाओं में जा सकता है और तिरछे यात्रा नहीं कर सकता है।
आपका कार्य, बहादुर बिल्ली का बच्चा सेवर, एक बार रोबोट के रडार मानचित्र को पढ़ना है, और कम से कम आंदोलन की दिशा में यात्रा की दूरी के साथ कम से कम मात्रा में उत्पादन करना है। रोबोट को बिल्ली के बच्चे के लिए कम से कम एक रास्ता होने की गारंटी है।
यह सुनिश्चित करने के लिए कि रोबोट किसी खराबी कार्यक्रम को निष्पादित करने में समय बर्बाद न करे, जो रोबोट को बिल्ली के बच्चे को खोजने में मदद नहीं करेगा, मैं आपको प्रोत्साहित करता हूं, बहादुर बिल्ली का बच्चा बचाने के लिए, रोबोट के पिछले कार्यक्रम के इस आउटपुट का उपयोग करने के लिए सुनिश्चित करें कि बिल्ली का बच्चा खोजने पर कोई समय बर्बाद न हो!
परीक्षण के मामलों
Input:
######################
# d 3 Kj #
# #
# R #
# q #
######################
Output:
E 13
N 2
Input:
######################
# d r 3 Kj #
# p p #
# T X #
# q s t #
# #
# R o d W #
# #
# g t U #
# #
######################
Output:
N 1
E 10
N 4
E 2
Input:
######################
# spdfmsdlwe9mw WEK3#
# we hi #
# rdf fsszr#
# sdfg gjkti #
# fc d g i #
# dfg sdd #
# g zfg #
# df df #
# xcf R#
######################
Output:
N 1
W 9
N 5
E 4
N 1
E 4
N 1
कोड गणना में इनपुट / आउटपुट (यानी पूरा कार्यक्रम) शामिल है।