यह द्वीप गोल्फ चुनौतियों की एक श्रृंखला में दूसरा है। पिछली चुनौती
एक रेगिस्तानी द्वीप पर दो हर्मिट्स आए हैं। चूँकि वे एकांत की तलाश में आए थे, वे एक-दूसरे से यथासंभव दूर रहना चाहते हैं। उनके बीच की पैदल दूरी को अधिकतम करने के लिए उन्हें अपनी झोपड़ियों का निर्माण कहाँ करना चाहिए?
इनपुट
आपका इनपुट एक आयताकार ग्रिड होगा जिसमें दो वर्ण होंगे, जो भूमि और पानी का प्रतिनिधित्व करेंगे। नीचे दिए गए उदाहरणों में, भूमि है #
और पानी है .
, लेकिन आप अपनी इच्छा के अनुसार दो अलग-अलग वर्णों का विकल्प चुन सकते हैं।
...........
...##......
..#####....
..#######..
.#########.
...#######.
...#####.#.
....####...
...........
हमेशा कम से कम दो भूमि टाइलें होंगी। भूमि की टाइलें सभी सन्निहित होंगी (यानी केवल एक द्वीप है)। पानी की टाइलें भी सन्निहित होंगी (यानी झीलें नहीं हैं)। ग्रिड की बाहरी सीमा सभी में पानी की टाइलें होंगी। जमीन की टाइलें तिरछे नहीं जुड़ी होंगी : यानी, आपको कभी ऐसा कुछ दिखाई नहीं देगा
....
.#..
..#.
....
उत्पादन
आपके कोड को उसी ग्रिड को आउटपुट करना होगा, जिस पर दो झोपड़ी के स्थान हैं । नीचे दिए गए उदाहरणों में, झोपड़ी स्थानों को एक्स के साथ चिह्नित किया गया है, लेकिन आप किसी भी चरित्र को तब तक स्थानापन्न कर सकते हैं जब तक कि यह आपकी भूमि और पानी के पात्रों से अलग हो।
हट स्थान दो भूमि टाइल होने चाहिए, ताकि उनके बीच चलने की दूरी को अधिकतम करने के लिए चुना जा सके । हम चलने की दूरी को सबसे कम पथ की लंबाई के रूप में परिभाषित करते हैं, पूरी तरह से जमीन पर, दो बिंदुओं के बीच। भूमि टाइल को निकट या क्षैतिज रूप से लंबवत माना जाता है, लेकिन तिरछे नहीं ।
उपरोक्त द्वीप के लिए एक संभावित समाधान:
...........
...X#......
..#####....
..#######..
.#########.
...#######.
...#####.X.
....####...
...........
इन दो बिंदुओं के बीच की पैदल दूरी 11 है, जो इस द्वीप पर किसी भी दो बिंदुओं के बीच की सबसे बड़ी दूरी है। एक और दूरी -11 समाधान है:
...........
...##......
..X####....
..#######..
.#########.
...#######.
...#####.X.
....####...
...........
विवरण
आपका समाधान एक पूर्ण कार्यक्रम या फ़ंक्शन हो सकता है । का कोई भी डिफ़ॉल्ट इनपुट और आउटपुट तरीकों स्वीकार्य हैं।
आपका इनपुट और आउटपुट एक मल्टीलाइन स्ट्रिंग, स्ट्रिंग्स की एक सूची या 2 डी सरणी / नेस्टेड वर्णों / एकल-वर्ण स्ट्रिंग्स की सूची हो सकती है। आपके आउटपुट (वैकल्पिक रूप से) में एक एकल अनुगामी न्यूलाइन हो सकती है। जैसा कि ऊपर उल्लेख किया गया है, आप के स्थान पर किसी भी तीन अलग-अलग वर्णों का उपयोग कर सकते हैं #.X
(कृपया अपनी प्रविष्टि में निर्दिष्ट करें कि आप किन वर्णों का उपयोग कर रहे हैं)।
परीक्षण के मामलों
ए अद्वितीय झोपड़ी नियुक्तियों के साथ द्वीप:
....
.##.
....
....
.XX.
....
......
......
..##..
...#..
......
......
......
......
..X#..
...X..
......
......
........
.#####..
.##..##.
.#..###.
.##..##.
........
........
.#####..
.##..##.
.#..###.
.#X..#X.
........
.........
.#####.#.
.#...#.#.
.#.###.#.
.#.....#.
.#######.
.........
.........
.#####.X.
.#...#.#.
.#.X##.#.
.#.....#.
.#######.
.........
बी कई संभावित समाधान के साथ एक द्वीप का उदाहरण:
........
....##..
...####.
..###...
.#####..
.#####..
..##....
........
संभव आउटपुट:
........
....#X..
...####.
..###...
.#####..
.X####..
..##....
........
........
....#X..
...####.
..###...
.#####..
.#####..
..X#....
........
........
....##..
...###X.
..###...
.#####..
.X####..
..##....
........
........
....##..
...###X.
..###...
.#####..
.#####..
..X#....
........
सी। बड़े परीक्षण का मामला एक जिस्ट के रूप में
यह कोड-गोल्फ है : प्रत्येक भाषा में सबसे छोटा कोड जीतता है।