चूंकि मैंने कुछ साल पहले पहली बार देखा था, इसलिए मुझे हमेशा इस तरह की शब्द घड़ी से वशीभूत किया गया था, जहां समय वास्तव में शब्दों द्वारा प्रस्फुटित किया जाता है या एक सार्थक वाक्य में नहीं।
उस घड़ी पर प्रदर्शित पाठ निम्नलिखित है।
IT IS HALF TEN
QUARTER TWENTY
FIVE MINUTES TO
PAST TWO THREE
ONE FOUR FIVE
SIX SEVEN EIGHT
NINE TEN ELEVEN
TWELVE O'CLOCK
आपका काम ऐसी काम करने वाली घड़ी लिखना है। यदि वर्तमान समय में मुद्रण के लिए प्रासंगिक हैं तो केवल और केवल तभी शब्द प्रकाशित किए जाते हैं। अन्यथा, वे नीचे जला रहे हैं। शब्द मुद्रित होकर "लिट" होते हैं और शब्द की लंबाई होने के कारण कई स्थान से "लिट" हो जाते हैं।
उदाहरण: यदि वर्तमान समय 17:23 है, तो मुद्रित पाठ बिल्कुल निम्नलिखित होना चाहिए:
IT IS
TWENTY
FIVE MINUTES
PAST
FIVE
नियम
- मुद्रित समय 12 वां संस्करण है, लेकिन एएम / पीएम के बिना।
- गोलाई केवल मिनटों के आधार पर की जाती है (सेकंड पूरी तरह से अप्रासंगिक हैं)। गोलाई 5. के निकटतम गुणक से की जाती है। इसलिए, उदाहरण के लिए, 17:52:38 वास्तव में 17:55 के सबसे करीब है, लेकिन चूंकि सेकंड अप्रासंगिक हैं, 17:52 वास्तव में 17:50 तक गोल है। और मुद्रित पाठ "IT IS TEN MINUTES TO SIX" (प्रासंगिक रिक्ति के साथ) है। इसलिए यदि
XX
पाँच का गुणक है,XX
तो HH: (XX-2): 00 से HH: (XX + 2): 59 तक उपयोग किया जाएगा। शब्दMINUTES
प्रकट होना चाहिएFIVE
,TEN
याTWENTY
मिनट अनुभाग ("टू" या "पेस्ट" से पहले) में जलाया जाता है। - पाठ को रखने के लिए सभी अप्रासंगिक शब्दों को उतने स्थान के रूप में प्रतिस्थापित किया जाता है जहां यह ऊपर के टेम्पलेट में स्थित है। अनुगामी रिक्त स्थान की छंटनी की जा सकती है। पाठ को अपेक्षित स्थान पर रखने के लिए प्रासंगिक स्थान रखा जाना चाहिए।
अनुगामी रेखाओं की छंटनी भी की जा सकती है। प्रासंगिक खाली लाइनों को अभी भी दिखाई देना आवश्यक है। उदाहरण:
IT IS TEN MINUTES PAST TWO
जब ये मान घंटों को संदर्भित करते हैं
TEN
तो पहली पंक्ति याFIVE
तीसरी पंक्ति पर प्रकाश न डालें।- आप एक इनपुट स्वीकार कर सकते हैं। यदि आप किसी इनपुट को स्वीकार करते हैं, तो इनपुट आपके इच्छित स्ट्रिंग (पूर्णांक की सूची, मूल समय, आपकी भाषा का समर्थन, ...) टाइप करने का समय होगा, लेकिन यदि वे संबंधित नहीं हैं तो किसी भी पैरामीटर की अनुमति नहीं है। छपने का समय। यदि आप कोई इनपुट का समर्थन करते हैं, तो आपको वर्तमान समय का उपयोग करना होगा। यदि आप दोनों का समर्थन करते हैं, तो यह बेहतर है लेकिन कोई बोनस नहीं है;)
- आपका कोड एक प्रोग्राम, एक फंक्शन, एक लैम्ब्डा हो सकता है लेकिन स्निपेट नहीं।
- यदि आपकी भाषा किसी भी तरह से मुद्रण का समर्थन करती है, तो उसे परिणाम प्रिंट करना चाहिए (एक फ़ाइल में, मानक आउटपुट पर, मुझे कोई आपत्ति नहीं है)। यदि आपकी भाषा किसी भी तरह से मुद्रण का समर्थन नहीं करती है, तो इसे अपेक्षित पाठ को "वापस" करने की अनुमति है। परिणाम या तो सभी अपरकेस या सभी लोअरकेस हो सकते हैं, दोनों का मिश्रण नहीं।
- मानक खामियां लागू होती हैं।
- यह कोड-गोल्फ है इसलिए सबसे छोटा कोड जीतता है!
- संभव के माप में, कृपया अपनी भाषा के एक ऑनलाइन दुभाषिया का लिंक प्रदान करें।
परीक्षण के मामलों
Input: <no input> (the current local time is 19:20)
Output:
IT IS
TWENTY
MINUTES
PAST
SEVEN
Input: 13:15
Output: (empty line is being printed)
IT IS
QUARTER
PAST
ONE
Input: 13:58
Output: (rounding)
IT IS
TWO
O'CLOCK
Input: 14:30
Output: (half is always a edge-case)
IT IS HALF
PAST TWO
Input: 15:35
Output: (light up "TO")
IT IS
TWENTY
FIVE MINUTES TO
FOUR
Input: 10:00
Output: (do not use the TEN or FIVE on the first line when referring to the hours)
IT IS
TEN
O'CLOCK
Input: 12:00
Output: (O'CLOCK and a lot of empty lines)
IT IS
TWELVE O'CLOCK