परिचय
पार्सन्स कोड का वर्णन करने के लिए सिर्फ एक सरल तरीका है पिच रूपों , संगीत का एक टुकड़ा में एक नोट में अधिक है कि क्या है या पिछले बजट से कम।
यहां तक कि अगर आप याद रखने वाली धुनों को चूसते हैं, तब भी आप बहुत याद रख सकते हैं कि क्या कोई नोट ऊपर या नीचे जाता है, इस प्रकार पार्सन्स कोड आपको एक खोज इंजन का उपयोग करके संगीत की पहचान करने में मदद कर सकता है।
विवरण
प्रत्येक भिन्नता को एक एकल वर्ण द्वारा दर्शाया जाता है, जो निम्नलिखित में से एक है:
R
यदि नोट पिछले एक से समान है ( " आर एपेट" के लिए खड़ा है )U
यदि नोट पिछले एक से अधिक है ( " यू पी" के लिए खड़ा है )D
यदि नोट पिछले एक से कम है ( " डी खुद के लिए खड़ा है " )
प्रारंभिक नोट के रूप में लिखा है *
।
उदाहरण
यहाँ पार्सन्स कोड ( "ओड टू जॉय" की शुरुआत ) का एक उदाहरण है :
*RUURDDDDRUURDR
आप वास्तव में इसकी कल्पना कर सकते हैं , जैसे:
*-*
/ \
* *
/ \
*-* * *-*
\ / \
* * *-*
\ /
*-*
हम अब से एक समोच्च कॉल करेंगे ।
ऐसे उदाहरणों को चित्रित करने के नियमों को उपरोक्त उदाहरण द्वारा स्व-समझाया गया है।
चुनौती
अब आती है असली चुनौती।
एक प्रोग्राम लिखें, जो इनपुट के रूप में एक समोच्च दिया जाता है, अपने संबंधित पार्सन्स कोड को आउटपुट करता है।
आपको समोच्च खींचने के लिए नहीं कहा जाता है, लेकिन वास्तव में विपरीत है।
समोच्च से, मूल पार्सन्स कोड ढूंढें।
नियम
- कोड गोल्फिंग के लिए सामान्य नियम लागू होते हैं
- बाइट्स जीत की संख्या में सबसे छोटा कार्यक्रम
- इनपुट एक समोच्च है, और आउटपुट एक वैध पार्सन्स कोड होगा
- इनपुट के लिए अतिरिक्त व्हाट्सएप के बारे में विवरण अप्रासंगिक हैं, आपके लिए सबसे अच्छा काम करता है
- आपको पिछले नियम के अनुसार हार्डकोड, एक तरह से या किसी अन्य, आउटपुट के हिस्सों और / या प्रोग्राम का उपयोग करने की अनुमति नहीं है।
टिप्पणियाँ
- यह परीक्षण के लिए उपयोगी हो सकता है
- के लिए इसी पार्सन्स कोड
*
है*
- एक खाली स्ट्रिंग एक वैध समोच्च नहीं है
- एक पार्सन्स कोड हमेशा से शुरू होता है
*
*
जो कुछ भी नहीं करता है?
*
? नहीं। यह *
मुझे लगता है मुद्रित करना चाहिए । मैं इस कोने के मामले को जोड़ दूंगा।
*
। हमेशा।