ग्राफ़ लेने के लिए एक प्रोग्राम लिखें (मानक इनपुट या फ़ाइल, अपनी पसंद से) और ग्राफ़ में सबसे छोटा रास्ता खोजें।
रेखांकन निम्नलिखित प्रारूप का उपयोग करके निर्दिष्ट किया गया है:
A---S F--T
| / \ |
| / 5 0
|/ \|
D----3--E
A-Z: nodes in the graph
-|/\: edges in the graph
0-9: weights on the edges
<space>: all the holes
सभी किनारे अप्रत्यक्ष हैं और 8 कार्डिनल दिशाओं में से एक के साथ स्थित हैं (जैसे, कोई झुकता नहीं)। किनारों में वैकल्पिक रूप से 0 से 9 तक का वजन हो सकता है। वजन अंतिम प्रतीक पर नहीं होगा जो किनारे को एक नोड से जोड़ता है (यानी किनारों में कम से कम 3 प्रतीकों का होना चाहिए जिसमें एक वजन होता है)। अनब्लॉक किए गए किनारों का डिफ़ॉल्ट वजन 1 है।
आपके कोड को नोड्स के बीच सबसे छोटे पथ की गणना करनी चाहिए S
और T
लंबाई और पथ को इस तरह प्रिंट करना चाहिए :
5:SDEFT
सबसे कम सही कार्यक्रम जीतता है।
हाँ, आपको ग्राफ़ निर्दिष्ट करना होगा जैसा कि मैंने निर्दिष्ट किया है। यह वास्तव में समस्या है। सबसे छोटा पथ हिस्सा सिर्फ यह सुनिश्चित करता है कि आपका पार्सिंग सही है।
—
कीथ रान्डेल
इनपुट प्रारूप वास्तव में बहुत जटिल है और imho वास्तव में समस्या के लिए इतना नहीं जोड़ता है।
—
JPvdMerwe
बस सोचा यहाँ लोग कुछ और अधिक चुनौतीपूर्ण कुछ करने की कोशिश करना चाहते हैं।
—
कीथ रान्डेल
@SimpleCoder: मैं
—
मानस को मानूँगा
AS0,SD0,SE5,DE3,FE0,FT0
(यदि प्रत्येक प्रविष्टि 3 बाइट्स लंबी है, तो आप अल्पविराम को छोड़ सकते हैं।)