आप सैन फ्रांसिस्को में एक टैक्सी ड्राइवर हैं। जैसा कि टेक्सीकैब ड्राइवरों की खासियत है, आप एक ग्रिड को नेविगेट कर रहे हैं, जहां एकमात्र वैध दिशाएं जो आप ले जा सकती हैं, वे बाएं, दाएं, ऊपर और नीचे हैं। हालांकि, सैन फ्रैंसिस्को बहुत पहाड़ी है, इसलिए दो आसन्न चौराहों के बीच की दूरी आवश्यक रूप से समान नहीं है। अधिक विशेष रूप से, ऊंचाई पर एक चौराहे और ऊंचाई पर a
आसन्न चौराहे के बीच की दूरी b
होगी 1 + |a - b|
। आपका लक्ष्य मानचित्र के शीर्ष बाईं ओर अपने मूल से सभी छोटे से छोटे रास्तों को नीचे दाईं ओर अपने गंतव्य तक खोजना है।
इनपुट
जो भी प्रारूप में पूर्णांक ऊंचाई का एक दो आयामी ग्रिड सबसे सुविधाजनक है (दो आयामी सरणी, चौड़ाई और / या ऊंचाई, आदि के साथ एक आयामी सरणी)।
उत्पादन
ऊंचाई के दो समीपस्थ चौराहों के बीच की दूरी को देखते हुए कम से कम दूरी में ऊपर से इनपुट के निचले दाएं कोने पर आने के लिए यात्रा करने का निर्देश का एक क्रम a
और b
सूत्र द्वारा दिया गया है 1 + |a - b|
। यदि कई समाधान आउटपुट सभी समाधान हैं।
हालांकि मैं का उपयोग U
, D
, L
, और R
ऊपर के लिए, नीचे, सही अपने कार्यक्रम इतने लंबे समय में यह और सभी आदानों पर उनके साथ संगत है के रूप में दिशाओं का प्रतिनिधित्व करने के लिए किसी भी चार अलग तार का उपयोग कर सकते नीचे के उदाहरणों में छोड़ दिया, और।
उदाहरण
Input:
0 3 0 0 0
0 2 0 2 0
0 0 0 3 0
Output:
D D R R U U R R D D
Input:
3
Output:
<empty>
Input:
11 11 11
11 11 11
11 11 11
Output:
R R D D
R D R D
R D D R
D R R D
D R D R
D D R R
Input:
7 8 1 -1 0
4 4 6 -1 7
3 4 4 2 8
2 5 2 -1 2
Output:
D R D R R D R
D R D R D R R
यह कोड-गोल्फ है इसलिए सबसे छोटी बाइट काउंट जीत के साथ उत्तर।