आपका लक्ष्य एक प्रोग्राम लिखना है जो 6 या उससे कम चालों में किसी भी मास्टरमाइंड पहेली को हल करेगा।
पृष्ठभूमि
मास्टरमाइंड एक बोर्ड गेम है। खेल का लक्ष्य अन्य खिलाड़ी द्वारा छिपाए गए 4 रंगीन खूंटों के संयोजन (रंगों और व्यवस्था) का सटीक अनुमान लगाना है। जब एक अनुमान लगाया जाता है, तो दूसरा खिलाड़ी 0 और 4 सफेद और लाल खूंटे के बीच प्रतिक्रिया करता है। एक लाल खूंटी जहां रंग और स्थान सही है। एक सफेद खूंटी वह जगह है जहां रंग को शेष टुकड़ों में दर्शाया जाता है, लेकिन गलत स्थान पर है। यदि अनुमान में डुप्लिकेट रंग हैं, तो गुप्त में संबंधित रंग के अनुसार केवल एक खूंटी से सम्मानित किया जाएगा। (इसलिए - यदि रहस्य में 1 ब्लू होता है, और अनुमान में 2 ब्लूज़ एक सही स्थान पर होते हैं, तो एक लाल मिर्च दी जाएगी)। 6 अलग-अलग रंग हैं, और डुप्लिकेट का उपयोग किया जा सकता है।
उदाहरण के लिए, एक खेल इस प्रकार हो सकता है: (हल मानकर रेड ग्रीन ग्रीन ब्लू है)
1: Blue Purple Black Green - 2 white pegs
2: Green Red Black Blue - 2 white pegs, 1 red peg
3: Green Green Green Blue - 3 red pegs
4: Red Green Green Blue - 4 red pegs
विकिपीडिया पर नियमों का विस्तार किया गया है
आवश्यकताएँ
- कार्यक्रम को स्टडिन से पढ़ना चाहिए, और स्टडआउट को लिखना चाहिए
- मैं रंगों के बजाय सरलता के लिए संख्याओं का उपयोग करूंगा। अनुमान लगाने का संयोजन 1 और 6 के बीच 4 संख्याएं होंगी
उन्हें अपने अनुमानों को एक नई पंक्ति के साथ 4 स्थान से अलग संख्या की संख्या के रूप में 1 से 6 तक समाप्त करना चाहिए। उदाहरण के लिए:
1 5 2 2 \ n
यह कार्यक्रम बाद में इनपुट के रूप में प्राप्त करेगा, इसके अनुमान के बाद 0 और 4 के बीच 2 पूर्णांक एक स्थान से अलग हो जाते हैं और एक नई रेखा के साथ समाप्त होते हैं। पहला होगा सफेद खूंटे की मात्रा, दूसरा लाल खूंटे की मात्रा।
- "0 4" (4 लाल खूंटे) के इनपुट पर, कार्यक्रम को समाप्त करना होगा
- कार्यक्रम को कम से कम 6 मोड़ (आपका प्रोग्राम आउटपुट देता है, इसके बाद प्रतिक्रिया इनपुट 1 बारी है) को हल करने में सक्षम होना चाहिए। कम में इसे हल करने में सक्षम होने के लिए कोई बोनस (प्रमाण की जटिलता के कारण) नहीं है।
- समाधान पूरी तरह से आंतरिक होना चाहिए और स्रोत में शामिल होना चाहिए। केवल मानक पुस्तकालयों की अनुमति है। इसलिए समाधान किसी अन्य फ़ाइलों (जैसे शब्दकोशों), या इंटरनेट पर निर्भर नहीं हो सकता है।
उदाहरण इनपुट / आउटपुट
> is your programs output
< is the responding input
Solution is 1 5 6 6
> 1 2 3 4
< 0 1
> 4 1 6 6
< 1 2
> 1 6 5 6
< 2 2
> 1 5 6 6
< 0 4
स्कोरिंग
- यह शुद्ध और सरल कोड गोल्फ है । बाइट्स में सबसे छोटा समाधान जीतता है।
यह मेरा पहला कोड गोल्फ प्रश्न है। मेरी माफी अगर मैंने कुछ गलत किया है, लेकिन मैंने यह सुनिश्चित करने के लिए यथासंभव प्रयास किया है कि कोई अस्पष्टता नहीं है, और जितना संभव हो सके उतने नियमों को रोकें। अगर मैं अस्पष्ट या अस्पष्ट हूं, तो कृपया बेझिझक सवाल पूछें।
1 2 3 4वापस नहीं आना चाहिए0 1?