स्टैच्यू ऑफ़ लिबर्टी की पीठ में एक कांस्य पट्टिका एम्मा लाजर द्वारा " द न्यू कोलोसस " कविता को प्रदर्शित करता है , जिसका एक हिस्सा पढ़ता है:
मुझे अपने थके हुए, अपने गरीब,
अपने huddled जनता को मुक्त करने के लिए तड़प दे,
अपने मनमाने तट के मनहूस इनकार।
इनको भेजो, बेघर, टेंपरेस्ट-टूस्ट मेरे लिए,
मैं अपना दीपक सुनहरे दरवाजे के पास उठाता हूँ!
इस चुनौती के लिए कविता के इस भाग को सरल बनाने के लिए, हम इसे सभी बड़े अक्षर बना देंगे और नए सिरे को स्लैश ( /
) के साथ बदलकर , अल्पविराम और अन्य विराम चिह्न रखेंगे :
GIVE ME YOUR TIRED, YOUR POOR,/YOUR HUDDLED MASSES YEARNING TO BREATHE FREE,/THE WRETCHED REFUSE OF YOUR TEEMING SHORE./SEND THESE, THE HOMELESS, TEMPEST-TOST TO ME,/I LIFT MY LAMP BESIDE THE GOLDEN DOOR!
हम इसे स्ट्रिंग एस कहेंगे। इसमें md5 हैश है 8c66bbb9684f591c34751661ce9b5cea
। आप वैकल्पिक रूप से मान सकते हैं कि इसमें एक अनुगामी न्यूलाइन है, जिस स्थिति में md5 हैश है 0928ff6581bc207d0938b193321f16e6
।
एक प्रोग्राम या फ़ंक्शन लिखें जो एक स्ट्रिंग में लेता है। जब स्ट्रिंग एस है, क्रम में आउटपुट , प्रति पंक्ति एक, छह वाक्यांश जो लोगों के प्रकार का वर्णन करते हैं, कविता में लेडी लिबर्टी के बारे में पूछा गया है:
TIRED
POOR
HUDDLED MASSES YEARNING TO BREATHE FREE
WRETCHED REFUSE OF YOUR TEEMING SHORE
HOMELESS
TEMPEST-TOST
(यह सटीक स्ट्रिंग, वैकल्पिक रूप से एक एकल अनुगामी न्यूलाइन के बाद, इनपुट एस के लिए आपका आउटपुट होना चाहिए)
के लिए कम से कम एक इनपुट स्ट्रिंग है कि नहीं है, अपने उत्पादन किसी भी ऊपर छह लाइनों के अलावा अन्य स्ट्रिंग होना चाहिए। यह केवल आउटपुट के रूप में सरल हो सकता है TIRED
यदि इनपुट केवल है GIVE ME YOUR TIRED
। यह नियम शुद्ध हार्डकोडिंग को रोकने के लिए है। अन्यथा, जब इनपुट स्ट्रिंग S नहीं है, तो आपका कोड कुछ भी कर सकता है।
यह अनिवार्य रूप से एक निरंतर-उत्पादन चुनौती है जहां आपको एक इनपुट दिया जाता है जो उत्पादन के अपेक्षाकृत करीब है। आप निश्चित रूप से ज्यादातर इनपुट को अनदेखा कर सकते हैं और आउटपुट को हार्डकोड कर सकते हैं, लेकिन आउटपुट के लिए आवश्यक इनपुट के सबस्ट्रिंग को बाहर निकालना, कहना बेहतर हो सकता है।
संदर्भ के लिए, यहां S में छह आउटपुट लाइनों के शून्य-आधारित सूचकांक और लंबाई हैं:
13 5, 25 4, 36 39, 81 37, 136 8, 146 12
बाइट्स में सबसे छोटा कोड जीतता है।