अपने लक्ष्य एक प्रोग्राम है जो एक यादृच्छिक 10x10 मानचित्र बनाता का उपयोग कर लिखने के लिए है 0
, 1
और 2
, और से ऊपर-बाईं ओर निचले-दाएं कोने, यह सोचते हैं कि कम से कम पथ पाता है:
0 एक घास के मैदान का प्रतिनिधित्व करता है: कोई भी उस पर चल सकता है;
1 एक दीवार का प्रतिनिधित्व करता है: आप इसे पार नहीं कर सकते;
2 एक पोर्टल का प्रतिनिधित्व करता है: एक पोर्टल में प्रवेश करते समय, आप नक्शे में किसी अन्य पोर्टल पर जा सकते हैं।
ऐनक:
- ऊपरी बाएं भाग तत्व और निचले दाएं से एक होना चाहिए 0 ;
- जब यादृच्छिक नक्शा बनाने, हर क्षेत्र एक होने का 60% अवसर होता है 0 , 30 एक होने का% 1 एक होने का और 10% 2 ;
- आप किसी भी निकटवर्ती क्षेत्र (यहां तक कि विकर्ण वाले) में जा सकते हैं;
- आपके कार्यक्रम को नक्शे और सबसे छोटे पथ के चरणों की संख्या का उत्पादन करना चाहिए;
- यदि कोई मान्य पथ नहीं है जो नीचे-दाएं फ़ील्ड की ओर जाता है, तो आपके प्रोग्राम को केवल नक्शे का उत्पादन करना चाहिए;
- आप अपने इच्छित किसी भी संसाधन का उपयोग कर सकते हैं;
- सबसे छोटा कोड जीतता है।
चरणों की गणना:
एक कदम एक वास्तविक आंदोलन है; हर बार जब आप फ़ील्ड बदलते हैं, तो आप काउंटर को बढ़ाते हैं।
आउटपुट:
0000100200
0100100010
1000000111
0002001000
1111100020
0001111111
0001001000
0020001111
1100110000
0000020100
9