परिचय
हम - विशेष रूप से हमारे बीच में रहने वाले, जो प्रशंसक होते हैं - सभी को यह पुराना दूर का कार्टून याद है :
जाहिर है, प्रोफेसर श्वार्ट्जमैन ने अपने आविष्कार कौशल का उपयोग करने के लिए अपने आविष्कार को डालने से पहले सिर्फ एक मूत थोड़ा अधिक किया हो सकता है। लेकिन क्या आप इसे स्वयं दोहरा सकते हैं ... जितना संभव हो उतने बाइट्स का उपयोग कर सकते हैं?
इनपुट चश्मा
आपको एक स्क्रिप्ट बनानी चाहिए जो कुत्ते की आवाज़ को उचित रूप से "हे" के रूप में ध्वनित करे। यह शुद्ध कोड गोल्फ है; बाइट्स की सबसे कम संख्या जीतती है।
आपके इनपुट में निम्नलिखित टोकन के कुछ संयोजन शामिल होंगे:
Bark
,Baark
,Baaark
,Baaaark
, ... (यह है कि,B*rk
कम से कम 1 के साथa
तारांकन की जगह)Woof
,Wooof
,Woooof
, ... (W*f
कम से कम के साथ 2o
रों तारांकन की जगह)Grr
,Grrr
,Grrrr
, ..., (G
द्वारा कम से कम इसके बाद 2r
रों)- कोई भी संख्या
.
(अवधि),!
(विस्मयादिबोधक चिह्न) और / या?
(प्रश्न चिह्न) अक्षर, जो इनपुट में कहीं भी हो सकते हैं
ध्यान दें, फिर से, कि- Woof
आधारित और Grr
आधारित टोकन को क्रमशः कम से कम दो o
एस और r
एस की आवश्यकता होती है; Wof
और मान्य टोकन नहींGr
हैं ।
कोई टोकन कितने समय तक हो सकता है इसकी कोई सीमा नहीं है (जैसे, a
एक Bark
टोकन में कितने दोहराए जा सकते हैं ); हालाँकि, आपके डिकोडर को केवल इस चुनौती को पारित करने के लिए 10 कुल a
एस, o
एस, या r
एस के साथ इनपुट टोकन के लिए सही ढंग से काम करने की आवश्यकता है ।
आउटपुट स्पेक्स
श्वार्ट्जमैन के डिजाइन के प्रति वफादार, आपके कैनाइन डिकोडर प्रोग्राम को इसे आउटपुट टेक्स्ट में संसाधित करना चाहिए:
Bark
,Woof
औरGrr
बनHey
;Baark
,Wooof
औरGrrr
बनHeyy
;Baaark
,Woooof
औरGrrrr
बनHeyyy
; आदि।- सभी-
Bark
आधारित टोकन के लिए,y
आउटपुट-Hey
आधारित टोकन मेंa
s की संख्या, s की संख्या के बराबर होनी चाहिए ; - सभी-
Woof
आधारित टोकन के लिए,y
आउटपुट-Hey
आधारित टोकन में s की संख्या, s की संख्या से एक कम होनी चाहिएo
; - सभी-
Grr
आधारित टोकन के लिए,y
आउटपुट-Hey
आधारित टोकन में s की संख्या, s की संख्या से एक कम होनी चाहिएr
; - सभी विराम चिह्नों (
.
,!
और?
) को अपरिवर्तित छोड़ दिया जाता है।
केवल एस और एस के y
लिए आउटपुट से एक को छोड़ना याद रखें ! 8 s के साथ इनपुट , 8 s के मिलान सेट के साथ बन जाएगा । हालांकि, केवल 7 एस के साथ बन जाता है ।Woof
Grr
Baaaaaaaark?
a
Heyyyyyyyy?
y
Woooooooof?
Heyyyyyyy?
y
फिर से, यदि आप असीमित आकार के इनपुट टोकन के लिए काम करने के लिए अपना कार्यक्रम प्राप्त कर सकते हैं, तो यह बहुत अच्छा है, लेकिन इस चुनौती के प्रयोजनों के लिए, आपके कार्यक्रम को केवल यह सुनिश्चित करने के लिए जांचना होगा कि यह इनपुट टोकन के लिए ठीक से काम करता है, जिसमें 10 से अधिक बार पत्र नहीं हैं ।
आपके इनपुट में सभी Bark
-, Woof
-, और Grr
-बेड टोकन को कैपिटल अक्षरों से शुरू किया जाता है। इसलिए, वहाँ कोई जरूरत नहीं संभाल मोड़ करने Bark grrr
में Hey heyy
या इसी तरह कुछ भी।
उदाहरण इनपुट और आउटपुट
- इनपुट:
Bark. Bark! Bark!!
- आउटपुट:
Hey. Hey! Hey!!
- इनपुट:
- इनपुट:
Baaaaaark?
(छहa
एस) - आउटपुट:
Heyyyyyy?
(छहy
एस)
- इनपुट:
- इनपुट:
Grrrrrrrr...
(आठr
एस) - आउटपुट:
Heyyyyyyy...
( सातy
एस)
- इनपुट:
- इनपुट:
?...!
- आउटपुट:
?...!
- इनपुट:
- इनपुट:
Wooof Woof? Grrrr. Baaaark Grr!
- आउटपुट:
Heyy Hey? Heyyy. Heyyyy Hey!
- इनपुट: