जैसा कि हम सभी जानते हैं कि लिमरिक, एएबीबीए कविता योजना और एक एनापस्टिक मीटर (जो भी हो) के साथ छोटी-छोटी, पाँच-पंक्ति वाली, कभी-कभी-छोटी कविताएँ होती हैं:
एक लिमरिक की बेतुकी
लाइन एक और लाइन पांच कविता को शब्द में लिखना
और जैसा कि आपने माना है कि
वे दूसरी
पंक्ति के साथ गाया जाता है चौथी पंक्ति को तीसरे के साथ गाया जाना चाहिए
आपको सबसे छोटा प्रोग्राम लिखने का काम सौंपा जाता है, जब एक इनपुट टेक्स्ट खिलाया जाता है, तो यह प्रिंट करता है कि क्या यह सोचता है कि इनपुट एक वैध लिमिस्टिक है। इनपुट या तो कमांड लाइन पर या मानक इनपुट के माध्यम से आपके विकल्प पर हो सकता है, और आउटपुट आपके विकल्प पर फिर से एक सरल "Y" / "N" या एक आत्मविश्वास स्कोर हो सकता है।
यहाँ एक सही लिमरिक का एक और उदाहरण दिया गया है:
एक यंग लेडी थी जिसकी आंखें
रंग और आकार के रूप में अद्वितीय
थीं जब उसने उन्हें चौड़ा किया तो
लोगों ने सभी को एक तरफ कर दिया
और आश्चर्य में पड़ गए
लेकिन नीचे की कविता स्पष्ट रूप से एक सीमा नहीं है, क्योंकि यह कविता नहीं है:
सेंट मधुमक्खियों का एक बूढ़ा आदमी
था जो एक ततैया द्वारा हाथ में डंक मार रहा था।
जब पूछा गया, "क्या यह चोट लगी है?"
उसने जवाब दिया, "नहीं, यह नहीं है,
मुझे बहुत खुशी है कि यह एक सींग नहीं था।"
न ही यह एक है, क्योंकि मीटर सभी गलत है:
मैंने बर्लिन के एक शख्स के बारे में सुना,
जिसने उस कमरे से नफरत की थी,
जब मैंने पूछा था कि
वह यह क्यों कहता है कि वह एक व्यंग के साथ कहेगा:
"ठीक है, तुम देखो, कल रात को वहाँ कुछ हुडलूम थे, जो चारों ओर जश्न मना रहे थे, जो डर्स को जीत रहे थे। विश्व कप, और वे वास्तव में बहुत जोर से थे इसलिए मैं डिनर के कारण सो नहीं सका। "
सुराग
यहां कुछ सुराग दिए गए हैं जिनका उपयोग आप यह तय करने के लिए कर सकते हैं कि आपका इनपुट लिमरिक है या नहीं:
- लाइमिक्स हमेशा पांच पंक्तियाँ लंबी होती हैं।
- लाइन्स 1, 2 और 5 को तुकबंदी करनी चाहिए।
- लाइन्स 3 और 4 को तुकबंदी करनी चाहिए।
- लाइन्स 1, 2 और 5 में लगभग 3x3 = 9 सिलेबल्स हैं, जबकि तीसरे और चौथे में 2x3 = 6 सिलेबल्स हैं
ध्यान दें कि इनमें से कोई भी पहला हार्ड-एंड-फास्ट के अलावा नहीं है: 100% शुद्धता की रेटिंग असंभव है।
नियम
आपका प्रवेश एक निर्धारक फैशन में 3 के माध्यम से उदाहरण 1 को बहुत कम सही ढंग से वर्गीकृत करना चाहिए ।
आप कर रहे हैं , निश्चित रूप प्रोग्रामिंग भाषाओं विशेष रूप से (देखें इस प्रतियोगिता के लिए तैयार किया गया है के अलावा किसी भी प्रोग्रामिंग भाषा आप चाहते हैं उपयोग करने की अनुमति यहाँ )।
आपको अपनी प्रोग्रामिंग भाषा के मानक प्रसाद को छोड़कर किसी भी पुस्तकालय का उपयोग करने की अनुमति नहीं है ।
आप कर रहे हैं माना कि अनुमति इस फाइल , CMU स्फिंक्स pronounciation शब्दकोश, मौजूदा निर्देशिका में कहा जाता है 'सी' एक फ़ाइल में है।
आपको परीक्षण इनपुट के लिए हार्ड-कोड की अनुमति नहीं है: आपका कार्यक्रम एक सामान्य लिमरिक श्रेणीबद्धक होना चाहिए।
आप कर रहे हैं , माना कि इनपुट ASCII है की अनुमति किसी विशेष प्रारूपण के बिना (उदाहरण में) की तरह है, लेकिन अपने कार्यक्रम interpunction से नहीं भ्रमित किया जाना चाहिए।
बोनस
निम्नलिखित बोनस उपलब्ध हैं:
- आपका कार्यक्रम एक लाइमेरिक के रूप में अपने परिणाम का उत्पादन करता है? 150 वर्ण लंबाई बोनस घटाएँ !
- आपका कार्यक्रम भी सोननेट्स की सही पहचान करता है? 150 वर्ण अतिरिक्त लंबाई बोनस घटाएँ !
- जब सॉनेट पर उपयोग किया जाता है तो आपका प्रोग्राम इसके परिणाम को सॉनेट के रूप में प्रदर्शित करता है? 100 वर्ण अतिरिक्त अतिरिक्त लंबाई बोनस घटाएँ !
आखिरकार...
यह याद रखना कि आप किस बोनस के लिए सोचते हैं कि आप पात्र हैं, यदि कोई है, और अपने स्कोर पर आने के लिए अपने वर्णों के बोनस को घटाएं। यह एक कोड गोल्फ प्रतियोगिता है: सबसे छोटी प्रविष्टि (यानी सबसे कम स्कोर वाली प्रविष्टि) जीतती है।
यदि आपको अधिक (सकारात्मक) परीक्षण डेटा की आवश्यकता है, तो OEDILF या बुक ऑफ नॉनसेंस देखें । नकारात्मक परीक्षण डेटा का निर्माण आसान होना चाहिए।
सौभाग्य!
code-challenge
बोनस की वजह से होना चाहिए । कृपया टैग विवरण पढ़ें