एक प्रोग्राम लिखें जो एक मिसरे टिक-टैक-टो का खेल खेलेगा। यही है, लक्ष्य अपने प्रतिद्वंद्वी को एक पंक्ति में तीन लेने के लिए मजबूर करना है।
मानक इनपुट पर स्वीकार करें या तो 'X' या 'O' (अक्षर, शून्य नहीं), यह निर्धारित करने के लिए कि कार्यक्रम किस तरफ खेला जाएगा। फिर अपनी बारी पर अपनी चाल के लिए एक अंक का उत्पादन करें, और खेल खत्म होने तक अपने विरोधियों की बारी पर एक भी अंक पढ़ें (एक्स हमेशा पहले चला जाता है)। एक बार विजेता का फैसला करने के बाद, एक्स या ओ के लिए कौन जीता, या ड्रा के लिए डी। उदाहरण के लिए, यदि ओ को एक पंक्ति में 3 मिलता है, तो एक्स जीतता है।
मान लें कि बोर्ड की संख्या इस प्रकार है:
0|1|2
-----
3|4|5
-----
6|7|8
आदर्श रूप से एक समाधान इष्टतम होगा और कभी नहीं खोएगा। टिक-टैक-टो की तरह, परफेक्ट प्ले हमेशा ड्रॉ में होना चाहिए। यदि उपरोक्त प्रोटोकॉल का पालन किया जाता है, तो मैं विभिन्न संभावित रणनीतियों के खिलाफ स्वचालित रूप से सबमिशन का परीक्षण कर सकता हूं।
विजेता सबसे छोटा कोड है। बोनस अंक अगर यह समान रूप से अच्छी चालों से बेतरतीब ढंग से उठाता है तो इसे थोड़ा और अप्रत्याशित बना देता है।