परिचय
स्काट 3 खिलाड़ियों के लिए एक पारंपरिक जर्मन कार्ड गेम है। डेक में 32 कार्ड होते हैं: ऐस, किंग, क्वीन, जैक, 10, 9, 8, 7 इन 4 सूट (क्लब, हुकुम, दिल, हीरे)।
हर दौर में एक खिलाड़ी एकल खेलता है जबकि अन्य दो उसके खिलाफ खेलते हैं। एक दौर की शुरुआत में प्रत्येक खिलाड़ी को 10 कार्ड दिए जाते हैं, शेष 2 कार्ड को स्केट कहा जाता है और उन्हें बीच में लगा दिया । एकल खिलाड़ी एक बोली चरण द्वारा निर्धारित किया जाता है। यह गेम का हिस्सा है जिसे आपको इस चुनौती से निपटना होगा, इसके बारे में अधिक जानकारी नीचे दी गई है।
जो खिलाड़ी बोली चरण जीतता है वह एकल खिलाड़ी बन जाता है। वह स्काट उठाता है और फिर दो कार्ड छोड़ता है (जो समान हो सकता है, दूसरी टीम को पता नहीं है), ट्रम्प सूट उठाता है, और गोल शुरू होता है।
एक दौर में दस तरकीबें होती हैं। एक चाल जीतने वाला खिलाड़ी अगले एक को ले जाता है जब तक कि सभी कार्ड नहीं खेले जाते। मैं यहां नियमों की व्याख्या नहीं करूंगा, लेकिन आपको पता होना चाहिए कि बहुत सारे ट्रम्प कार्ड होना अच्छा है। यदि आप नियमों के बारे में सीखना चाहते हैं तो विकिपीडिया लेख देखें जो मैंने इस पोस्ट के शुरू में जोड़ा था, लेकिन इस चुनौती के लिए इसकी आवश्यकता नहीं है।
चुनौती
आप अपने दो बेटों को सिखाना चाहते हैं कि स्केट कैसे खेलें। नियम उतने कठिन नहीं हैं, इसलिए वे जल्दी से इसमें उतर जाते हैं। उन्हें कठिन समय देने वाली एकमात्र चीज़ बोली है, विशेष रूप से उनके हाथ के खेल मूल्य की गणना करना। तो आप एक छोटा सा प्रोग्राम लिखने का निर्णय लेते हैं जो अधिकतम गेम वैल्यू को आउटपुट करता है जिसे वे अपने वर्तमान हाथ को देखते हुए बोली लगा सकते हैं।
खेल मूल्य की गणना
हर हाथ का एक निश्चित खेल मूल्य होता है। यह आपके पास अनुक्रमिक जैक की मात्रा और सूट जिसे आप ट्रम्प के रूप में चुनना चाहते हैं, द्वारा निर्धारित किया जाता है। चलो पहले कारक के साथ शुरू करते हैं, जैक!
द जैक फैक्टर
जैक हमेशा ट्रम्प कार्ड होते हैं, और वे हर दूसरे ट्रम्प कार्ड को हरा देते हैं। चार जैक के बीच शक्ति का क्रम है:
- क्लब ऑफ जैक (उच्चतम)
- हुकुम का जैक
- जैक ऑफ हार्ट्स
- जैक ऑफ डायमंड्स (सबसे कम)
आगे की व्याख्या में मैं उन्हें उन संख्याओं के साथ संदर्भित करूँगा जो मैंने उन्हें यहाँ सौंपे थे।
आपको याद है कि कुछ प्रकार का कारक है जो आपको जैक से मिलता है जो कि खेल के मूल्य का हिस्सा है? महान! यहाँ आप इसे कैसे प्राप्त करें:
यह जैक फैक्टर अनुक्रम में शीर्ष जैक की संख्या (ऊपर क्रम देखें), प्लस 1 है। इसलिए यदि आपके पास सभी 4 जैक हैं तो यह 4 + 1 = 5. है। यदि आपके पास केवल पहले 2 जैक हैं, तो यह 2 + 1 = है 3।
वैकल्पिक रूप से, चीजों को थोड़ा और अधिक जटिल बनाने के लिए, जैक फैक्टर क्रम में शीर्ष जैक की संख्या भी हो सकती है जो आप गायब हैं , प्लस 1। इसलिए यदि आप पहले वाले को याद कर रहे हैं, तो यह 1 + 1 = 2. है। यदि आप वह पहले 3 को याद कर रहा है, यह 3 + 1 = 4 है। ऊपर दिए गए नंबर का उपयोग करते हुए यहां कुछ उदाहरण दिए गए हैं:
[1, 4] -> 1 + 1 = 2
[1, 2, 4] -> 2 + 1 = 3
[2, 3, 4] -> 1 + 1 = 2
[1, 2, 3, 4] -> 4 + 1 = 5
[] -> 4 + 1 = 5
वह पहला कारक था। यहां बताया गया है कि आपको दूसरा कैसे मिलेगा:
ट्रम्प सूट कारक
यह एक बहुत सरल है। दूसरा कारक ट्रम्प सूट द्वारा निर्धारित किया जाता है जो एकल खिलाड़ी निम्नलिखित मैपिंग का उपयोग करता है:
Clubs -> 12
Spades -> 11
Hearts -> 10
Diamonds -> 9
यह आसान था, है ना?
खेल मूल्य
खेल का मूल्य दो कारकों का उत्पाद है। बहुत आसान है आपको लगता है? गलत! जबकि जैक-फैक्टर तय है, सूट-फैक्टर नहीं है। ट्रम्प के रूप में आपके द्वारा चुना गया सूट ट्रम्प की मात्रा और आपके हाथ में आपके गैर-ट्रम्प कार्ड के मूल्य पर निर्भर करता है। यह समझाने के लिए बहुत जटिल होगा कि एक अच्छा हाथ कैसा दिखता है, इसलिए आप निम्न एल्गोरिथम का उपयोग करेंगे:
कौन सा-ट्रम्प-डू-आई-पिक एल्गोरिदम
आपको बोली में भाग लेने की आवश्यकता नहीं है। यदि आप तय करते हैं कि एकल खेलने के लिए आपका हाथ बहुत खराब है, तो आप बस पास कर सकते हैं। आपके हाथ को खेलने योग्य होने के लिए निम्नलिखित मानदंडों से मेल खाना चाहिए:
कम से कम 6 ट्रम्प कार्ड (ट्रम्प सूट के कार्ड + जैक की संख्या) लें। यदि यह एक से अधिक सूट के लिए संभव है, तो वह चुनें, जिसके परिणामस्वरूप अधिक ट्रम्प कार्ड होंगे। यदि अभी भी एक टाई है, तो ऊपर दी गई उच्चतम रेटिंग के साथ सूट चुनें।
गैर-ट्रम्प कार्ड में से, कम से कम 1 ऐस है।
यदि आपका हाथ इस मापदंड के दोनों से मेल नहीं खाता है, तो आप पास हो जाएंगे। यदि ऐसा होता है, तो आप गणना किए गए खेल मूल्य और चुने हुए ट्रम्प सूट का उत्पादन करेंगे।
संक्षिप्त नोट: बेशक यह एक बहुत ही सरल एल्गोरिथ्म है। इस तरह से एक चुनौती का सामना करने में एक हाथ से निर्णय लेने में बहुत अधिक रणनीति और अनुभव होता है।
इनपुट
हर कार्ड में एक विशिष्ट पहचानकर्ता होता है। पहला भाग सूट ( C lubs, S pades, H earts, D iamonds) है, दूसरा भाग वह मूल्य है जो इस मैपिंग द्वारा दिया गया है:
Ace -> A
King -> K
Queen -> Q
Jack -> J
10 -> 0
9 -> 9
8 -> 8
7 -> 7
दोनों भागों ने मिलकर एक कार्ड बनाया। मान पहले आता है, फिर सूट आता है। आप अपनी इच्छानुसार किसी भी प्रारूप में कार्ड ले सकते हैं।
उत्पादन
यदि हाथ खेलने योग्य है, तो खेल मूल्य और चुना हुआ ट्रम्प सूट (ऑर्डर कोई फर्क नहीं पड़ता) को आउटपुट करता है। यदि यह नहीं है, तो आउटपुट "पास"।
नियम
- जैसा कि उल्लेख किया गया है कि आप इनपुट को आपके लिए सबसे सुविधाजनक प्रारूप में ले सकते हैं। उदाहरण परीक्षण मामलों में नीचे देखते हैं।
- इनपुट कमांड लाइन तर्कों, उपयोगकर्ता इनपुट, या फ़ंक्शन तर्कों द्वारा प्रदान किया जा सकता है।
- आउटपुट रिटर्न वैल्यू के रूप में प्रदान किया जा सकता है या बस स्क्रीन पर मुद्रित किया जा सकता है।
- इनपुट में कार्ड किसी भी तरह से ऑर्डर नहीं किए जा सकते हैं। आपका प्रोग्राम किसी भी यादृच्छिक कार्ड क्रम से निपटने में सक्षम होना चाहिए।
- सबसे कम बाइट-काउंट जीत!
परीक्षण के मामलों
परीक्षण मामलों में इनपुट 2-चार स्ट्रिंग्स की एक सूची होगी।
1. ["JC", "JS", "JD", "AC", "KC", "9C", "AS", "7H", "QD", "8D"] -> 36 Clubs
2. ["JD", "AS", "0S", "KS", "QS", "9S", "8S", "AD", "8C", "9C"] -> 44 Spades
3. ["JH", "JD", "0S", "KS", "9C", "8C", "QH", "KH", "AD", "9D"] -> pass
4. ["JD", "AS", "KS", "QS", "0S", "9S", "8D", "7D", "0C", "QH"] -> pass
स्पष्टीकरण:
- ट्रम्प के रूप में क्लब के साथ एक पंक्ति में दो जैक। तो खेल मूल्य 3 x 12 = 36 है
- ट्रम्प के रूप में हुकुम के साथ गायब एक पंक्ति में तीन जैक। तो खेल मूल्य 4 x 11 = 44 है
- केवल ट्रम्प कार्ड की अधिकतम 4 संभव है, इसलिए आप पास होंगे।
- हुकुम के साथ छह ट्रम्प कार्ड लेकिन कोई गैर-ट्रम्प इक्का नहीं है, इसलिए आप पास होंगे।
यदि कुछ नियम अस्पष्ट हैं, तो आगे बढ़ें और टिप्पणी करें। मैं इस खेल के साथ बड़ा हुआ हूं, इसलिए मेरे लिए न्याय करना मुश्किल है अगर मैंने पर्याप्त विस्तार से सब कुछ बताया।
और अब ... हैप्पी कोडिंग!
संपादित करें: जैसा कि टिप्पणियों में मुझे बताया गया है (isaacg के लिए धन्यवाद), एक नियम है जो 4 जैक के बाद "जैक-फैक्टर" में निम्नलिखित शीर्ष ट्रंप को गिना जाता है, इसलिए यह 11. तक जा सकता है। इस चुनौती को सरल बनाए रखने के लिए और लोगों को भ्रमित न करने के लिए, मेरे द्वारा प्रस्तावित नियम मूल रूप से वही रहेंगे जो वे हैं। तो अधिकतम कारक 5 पर रहता है।