शतरंज में, खेल के लिए 4 चाल (2 प्रत्येक) के बाद एक फ़ूल के मेट के साथ समाप्त होना संभव है ।
आपका लक्ष्य है हूल के फ़ूल मेट को खोजना : हलामा का 2-खिलाड़ी गेम जो खेले जाने वाले घुमावों की संख्या को कम करता है।
10 से अधिक 56 बोर्ड राज्य हैं, और मैंने देखा है कि ब्रांचिंग कारक 1000 से अधिक है, इसलिए संभावना है कि कोई भी इष्टतम समाधान नहीं पाएगा। इसके बजाय, आप सबसे अच्छा समाधान खोजने की कोशिश कर सकते हैं।
आपको उन चालों की सूची प्रस्तुत करनी चाहिए, और उन चालों को उत्पन्न करने के लिए आपके द्वारा उपयोग किया जाने वाला कोई भी कोड।
खेल की व्याख्या
हलामा चीनी चेकर्स के समान है, लेकिन एक 16 * 16 वर्ग बोर्ड पर खेला जाता है।
प्रारंभ में, बोर्ड इस तरह दिखता है:
खेल का लक्ष्य अपने सभी टुकड़ों को अपने प्रतिद्वंद्वी के टुकड़ों की शुरुआती स्थिति में ले जाना है।
एक खिलाड़ी की बारी पर, वह / वह:
मोड़ को पास करें
उसके एक टुकड़े को बगल के खाली स्थान पर ले जाएँ। आसन्न रिक्त स्थान में विकर्ण शामिल हैं।
उसके टुकड़ों में से एक को ले लो और निम्न बार किसी भी संख्या में करें: टुकड़े को एक आसन्न टुकड़े पर कूदें, इसे उस जगह पर उतारे जो टुकड़े के ऊपर कूद गया हो।
2 प्रकार की चाल को दर्शाने के लिए यहां एक उदाहरण दिया गया है।
नियम
कानूनी कदमों की एक सूची प्रस्तुत करें जिसके परिणामस्वरूप खेल समाप्त हो जाता है।
सूची जनरेट करने के लिए आपके द्वारा उपयोग किया गया कोई भी कोड सबमिट करें।
यदि आप किसी अन्य के कोड से बेहतर परिणाम प्राप्त करते हैं, तो परिणाम को टिप्पणी में पोस्ट करें या नए परिणामों के साथ उनकी पोस्ट को संपादित करें।
प्रत्येक चाल या तो None
मोड़ को पास करने के लिए होनी चाहिए , या (x1,y1,x2,y2)
एक टुकड़े को स्थानांतरित करने के लिए, जहां (x1,y1)
टुकड़े को स्थानांतरित करने के निर्देशांक हैं और उस टुकड़े (x2,y2)
के गंतव्य हैं (कूद चाल के लिए, मध्यवर्ती निर्देशांक को अनदेखा करें)। निर्देशांक (0,0)
शीर्ष बाएं कोने पर शुरू होता है । x- निर्देशांक दाईं ओर बढ़ता है, y-निर्देशांक नीचे की ओर बढ़ता है। मूव्स को न्यूलाइन से अलग किया जाना चाहिए।
आप अपनी चाल को सत्यापित करने के लिए इस अजगर स्क्रिप्ट का उपयोग कर सकते हैं । python halma_verify.py < file
में चाल को सत्यापित करने के लिए उपयोग करें file
।
सबसे छोटी सूची जीतती है।