इस चुनौती का लक्ष्य सबसे कम संभव प्रयासों में एक शब्द का अनुमान लगाने में सक्षम कार्यक्रम लिखना है। यह लिंगो टीवी शो ( http://en.wikipedia.org/wiki/Lingo_(US_game_show) ) की अवधारणा पर आधारित है ।
नियम
अपनी कमांड लाइन पर पहले तर्क के रूप में पारित एक शब्द की लंबाई को देखते हुए, खिलाड़ी कार्यक्रम अपने मानक आउटपुट पर एक एकल चरित्र के बाद अनुमान लगाकर शब्द का अनुमान लगाने के पांच प्रयासों का निपटान करता है \n
।
एक अनुमान लगाए जाने के बाद, कार्यक्रम को अपने मानक इनपुट पर एक स्ट्रिंग मिलती है, इसके बाद एकल \n
चरित्र भी होता है।
स्ट्रिंग में अनुमान लगाने के लिए शब्द के समान लंबाई है और निम्नलिखित वर्णों के अनुक्रम से युक्त है:
X
: जिसका अर्थ है कि दिया गया अक्षर अनुमान लगाने के लिए शब्द में मौजूद नहीं है?
: जिसका अर्थ है कि दिया गया अक्षर अनुमान लगाने के लिए शब्द में मौजूद है, लेकिन किसी अन्य स्थान परO
: जिसका अर्थ है कि इस स्थान पर अक्षर का सही अनुमान लगाया गया है
उदाहरण के लिए, यदि अनुमान करने के लिए शब्द है dents
, और कार्यक्रम के शब्द भेजता है dozes
, यह प्राप्त होगा OXX?O
क्योंकि d
और s
सही हैं, e
खो जाता है, और o
और z
मौजूद नहीं हैं।
सावधान रहें कि यदि कोई पत्र अनुमान लगाने के लिए शब्द की तुलना में अनुमान लगाने के प्रयास में अधिक बार मौजूद है, तो यह अनुमान लगाने के लिए शब्द में पत्र की संख्या की संख्या से अधिक और अधिक बार चिह्नित नहीं किया जाएगा । उदाहरण के लिए, यदि अनुमान लगाने के लिए शब्द है और प्रोग्राम भेजता है , तो यह प्राप्त होगा क्योंकि पता लगाने के लिए एक ही है ।?
O
cozies
tosses
XOXXOO
s
शब्दों को अंग्रेजी शब्द सूची से चुना जाता है। यदि प्रोग्राम द्वारा भेजा गया शब्द सही लंबाई का मान्य शब्द नहीं है, तो प्रयास को स्वचालित विफलता माना जाता है और केवल X
लौटा दिया जाता है।
खिलाड़ी कार्यक्रम को यह मान लेना चाहिए कि wordlist.txt
प्रति पंक्ति एक शब्द नाम और एक शब्द है जो वर्तमान कार्य निर्देशिका में मौजूद है, और आवश्यकतानुसार पढ़ा जा सकता है।
अनुमानों में केवल अल्फ़ाबेटिक लो-केस वर्ण ( [a-z]
) शामिल होना चाहिए ।
कार्यक्रम के लिए किसी अन्य नेटवर्क या फ़ाइल संचालन की अनुमति नहीं है।
खेल तब समाप्त होता है जब एक स्ट्रिंग जिसमें केवल शामिल होता O
है या कार्यक्रम के 5 प्रयासों के बाद वापस आ जाता है और शब्द का अनुमान लगाने में सक्षम नहीं था।
स्कोरिंग
गेम का स्कोर दिए गए सूत्र द्वारा दिया गया है:
score = 100 * (6 - number_of_attempts)
इसलिए यदि पहली कोशिश में शब्द का सही अनुमान लगाया जाता है, तो 500 अंक दिए जाते हैं। आखिरी कोशिश 100 अंकों की है।
शब्द शून्य अंक का अनुमान लगाने में विफलता।
गड्ढा
खिलाड़ी कार्यक्रमों का मूल्यांकन उन्हें 4 और 13 वर्णों के बीच प्रत्येक शब्द लंबाई के लिए 100 यादृच्छिक शब्दों का अनुमान लगाने की कोशिश करके किया जाएगा ।
यादृच्छिक शब्द चयन अग्रिम द्वारा किया जाएगा इसलिए सभी प्रविष्टियों को समान शब्दों का अनुमान लगाना होगा।
जीतने वाला कार्यक्रम, और स्वीकृत उत्तर, उच्चतम स्कोर तक पहुंचने वाला व्यक्ति होगा।
Https://github.com/noirotm/lingo पर कोड का उपयोग करके प्रोग्राम एक उबंटू वर्चुअल मशीन में चलाया जाएगा । किसी भी भाषा में कार्यान्वयन को तब तक स्वीकार किया जाता है जब तक कि उसे संकलित करने और / या चलाने के लिए उचित निर्देश दिए जाते हैं।
मैं गिट रिपॉजिटरी में माणिक में कुछ परीक्षण कार्यान्वयन प्रदान कर रहा हूं, उनसे प्रेरणा लेने के लिए स्वतंत्र महसूस करता हूं।
यह प्रश्न समय-समय पर प्रकाशित उत्तरों के लिए रैंकिंग के साथ अद्यतन किया जाएगा ताकि चुनौती देने वाले अपनी प्रविष्टियों में सुधार कर सकें।
आधिकारिक अंतिम मूल्यांकन 1 जुलाई को होगा ।
अपडेट करें
एंट्रीज़ अब wordlistN.txt
4 और 13 के बीच एन के लिए वर्तमान शब्द की लंबाई के लिए शब्द सूची को पढ़ने के लिए फ़ाइलों की उपस्थिति का अनुमान लगा सकते हैं ।
उदाहरण के लिए, एक wordlist4.txt
फ़ाइल है जिसमें सभी चार अक्षर शब्द हैं, और wordlist10.txt
सभी दस अक्षर शब्द हैं, और इसी तरह।
पहले दौर के नतीजे
2014-07-01 की तारीख में, तीन प्रविष्टियाँ प्रस्तुत की गई हैं, निम्नलिखित परिणाम के साथ:
4 5 6 7 8 9 10 11 12 13 Total
./chinese-perl-goth.pl 8100 12400 15700 19100 22100 25800 27900 30600 31300 33600 226600
java Lingo 10600 14600 19500 22200 25500 28100 29000 31600 32700 33500 247300
./edc65 10900 15800 22300 24300 27200 29600 31300 33900 33400 33900 262600
** Rankings **
1: ./edc65 (262600)
2: java Lingo (247300)
3: ./chinese-perl-goth.pl (226600)
सभी प्रविष्टियों ने लगातार प्रदर्शन किया, एक स्पष्ट विजेता के साथ, @ edc65 की C ++ की प्रविष्टि।
सभी प्रतियोगी काफी कमाल के हैं। मैं अभी तक @ चीनी-पर्ल-गोथ को भी हरा नहीं पाया हूं।
यदि अधिक प्रविष्टियाँ प्रस्तुत की जाती हैं, तो एक और मूल्यांकन होगा। वर्तमान प्रविष्टियों को भी बेहतर बनाया जा सकता है अगर आपको लगता है कि आप बेहतर कर सकते हैं।