यह चुनौती छोटे बच्चों की पुस्तकों की एक श्रृंखला से प्रेरित है जो फियोना वाट और राचेल वेल्स द्वारा लिखी गई है, जिसे मैं हाल ही में अपनी बेटी के साथ आनंद ले रहा हूं।
प्रत्येक पुस्तक में एक माउस (सचित्र, लेकिन पाठ का हिस्सा नहीं) शिकायत करता है कि एक ही प्रकार की 5 चीजों का उत्तराधिकार उसकी चीज नहीं है। इसके बाद यह घोषित करके कि कुछ घटक के पास वह संपत्ति नहीं है जिसकी वह अपेक्षा करता है।
पूछने के छठे समय पर, माउस अपनी चीज पाता है और प्रसन्न होता है क्योंकि उसके पास अपेक्षित संपत्ति होती है।
यहाँ एक विशिष्ट उदाहरण का पाठ है:
That's not my bunny, its tail is too fluffy.
That's not my bunny, its paws are too rough.
That's not my bunny, its tail is too woolly.
That's not my bunny, its eyes are too shiny.
That's not my bunny, its nose is too wrinkled.
That's my bunny! Its ears are so soft.
अब, अधिकांश प्रोग्रामिंग लोक को एहसास होगा कि यह कुछ पाठ के निर्माण की एक बहुत ही एल्गोरिथम विधि है। क्योंकि यह इतनी स्पष्ट प्रक्रिया है, हमें कुछ कोड लिखकर इसे पुन: पेश करने में सक्षम होना चाहिए।
आइए शब्दों के तीन संग्रहों से शुरू करें:
things = ["dinosaur", "lamb", "princess", "reindeer", "train"]
parts = ["back", "bells", "body", "bows", "crown", "dress", "ears",
"engine", "fan", "flippers", "funnel", "hooves", "horns", "neck",
"nose", "roof", "sash", "side", "spines", "spots", "tail", "teeth",
"tiara", "wheels", "windows"]
properties = ["bumpy", "fluffy", "furry", "fuzzy", "glittery", "glossy",
"hairy", "red", "rough", "rusty", "shiny", "silky", "slippery",
"soft", "sparkly", "squashy", "thick", "velvety", "woolly"]
- सबसे पहले, हम तय करते हैं कि हम किस तरह का वर्णन करेंगे।
- फिर 5 बार, हम लाइन उत्पन्न करेंगे "यह मेरी [चीज] नहीं है, इसका [भाग] बहुत [संपत्ति] है।
- अंत में, हम लाइन बनाते हैं "यह मेरी [चीज़] है! इसका [भाग] इतना [संपत्ति] है!
चुनौती
- "यह मेरी नहीं ..." कहानी का पाठ उत्पन्न करें।
- यह लगातार एक ही पाठ को पुन: पेश नहीं करना चाहिए।
- यह कोड गोल्फ है, इसलिए कम से कम बाइट्स में ऐसा करने का प्रयास करें।
- कृपया किसी भी भाषा का प्रयोग करें।
- व्हाइट स्पेस मायने नहीं रखता है, लेकिन लाइनों के बीच एक नया वर्ण होना चाहिए।
- स्रोत शब्दों की सूचियाँ आपके उत्तर का हिस्सा नहीं हैं (TIO में उन्हें हेडर में जोड़ा जा सकता है)।
- आप स्रोत शब्दों की सूचियों का नाम बदल सकते हैं।
- आउटपुट किसी ऑब्जेक्ट में उत्पन्न टर्मिनल या टेक्स्ट के लिए आउटपुट हो सकता है।
- कृपया एक ऑनलाइन दुभाषिया का लिंक शामिल करें।
- पंखुड़ियों को अनदेखा करें, "इसके सींग हैं" ठीक है।
- यह समझ बनाने की जरूरत नहीं है। यदि आपकी राजकुमारी की फ़नल बहुत अधिक शराबी है, तो बस इतना कहो।
नमूना उत्पादन:
That's not my train, its engine is too rusty.
That's not my train, its hooves is too thick.
That's not my train, its sash is too fuzzy.
That's not my train, its tail is too velvety.
That's not my train, its horns is too glittery.
That's my train! Its hooves is so hairy.
हैप्पी गोल्फिंग!