ज़ोंबी सर्वनाश आ गया है, और दुनिया खत्म हो रही है। अचानक, किसी को एक सूत्र का पता चलता है जो वर्तमान घंटे, मिनट और दिन लेता है, और एक पियानो पर खेलने के लिए एकदम सही नोट बाहर थूकता है जो तुरंत हर ज़ोंबी को मारता है जो इसे सुनता है। दुर्भाग्य से, दुनिया में केवल एक पियानो खिलाड़ी बचा है, और वह नोट्स पढ़ना भूल गया है, लेकिन वह अभी भी जानता है कि शीट संगीत कैसे पढ़ना है। बेशक, यह एक बहुत ही समय के लिए संवेदनशील चीज है, इसलिए ऐसा करना स्वाभाविक है। 1
आपकी चुनौती इस तरह के रूप में एक नोट लेने की है G
, और एक कर्मचारी (तिहरा फांक में) पर रखे गए नोट को आउटपुट करें, जैसे:
-----
-----
|
---|-
|
--O--
-----
विशिष्टता:
- आपको
-----
(5 डैश) और एक खाली लाइन की वैकल्पिक लाइनों के कर्मचारियों को आउटपुट करना होगा ।-----
कुल 5 s होंगे । इस स्टाफ़ के शीर्ष पर नोट को लगाया जाना चाहिए। - इनपुट निर्दिष्ट करेगा कि नोट कहाँ स्थित है। इनपुट होगा:
- एक वैकल्पिक
H
याL
, "उच्च" या "कम" निर्दिष्ट करना - पिच को निर्दिष्ट करने के
A
लिए एक पत्रG
- एक वैकल्पिक
#
याb
, तेज या सपाट निर्दिष्ट।
- एक वैकल्पिक
- "नोट" को इस रूप में परिभाषित किया गया है:
- वन
O
(कैपिटल ओ) स्टाफ के मध्य में संरेखित किया गया है, जो नोट के स्थान पर है। (शीर्ष पंक्ति हैHF
(उच्च एफ), और निचला रेखाE
(एक सामान्य ई) है।) - तीन
|
एस (ऊर्ध्वाधर बार), स्टेम, जो होगा:- नोट के बाईं ओर एक स्थान और नीचे की ओर जाना (नोट के नीचे एक स्थान शुरू करना) यदि नोट मध्य रेखा (
B
) या ऊपर या, पर है - नोट के दाईं ओर एक स्थान और ऊपर की ओर (नोट के ऊपर एक स्थान शुरू) यदि नोट मध्य रेखा के नीचे है।
- नोट के बाईं ओर एक स्थान और नीचे की ओर जाना (नोट के नीचे एक स्थान शुरू करना) यदि नोट मध्य रेखा (
- यदि इनपुट में निर्दिष्ट है तो नोट के बाईं ओर एक
#
याb
एक स्थान।
- वन
- यदि नोट बहुत अधिक या कम है, तो लेजर लाइनें जोड़ी जानी चाहिए। ये रेखाएँ
---
(5 की तुलना में चौड़ाई में केवल 3 डैश) होंगी, और केवल तभी दिखाई देंगी जब नोट नीचे या ऊपर / नीचे (क्रमशः शीर्ष / नीचे की ओर लेज़र लाइनों के लिए) होता है। - बाहरी स्थान आप चाहते हैं कहीं भी रखा जा सकता है; उदाहरण के लिए, आप रिक्त लाइनों को रिक्त स्थान बना सकते हैं या लेज़र लाइनों के बाद एक स्थान रख सकते हैं यदि यह आपको किसी भी वर्ण को बचाने में मदद करता है।
यहाँ एक विज़ुअलाइज़ेशन है, विनिर्देश को अधिक आसानी से समझने के लिए, लाइनों के आगे सभी नोट नामों के साथ:
HB
--- HA
HG
----- HF
HE
----- HD
HC
----- B
A
----- G
F
----- E
D
--- C
LB
--- LA
LG
--- LF
... (bottom cut off for brevity, you get the idea anyway)
यहां कुछ और उदाहरण दिए गए हैं जिनका उपयोग करके आप अपने कार्यक्रम का परीक्षण कर सकते हैं:
इनपुट: HG#
#O
-|---
|
-|---
-----
-----
-----
इनपुट: LAb
-----
-----
-----
-----
-----
|
--|
|
bO-
इनपुट: HB
O
|--
|
-|---
-----
-----
-----
-----
इनपुट: C
-----
-----
-----
-----
|
---|-
|
-O-
यह कोड-गोल्फ है , इसलिए बाइट्स में सबसे छोटा कोड जीत जाएगा!
1: सबसे यथार्थवादी प्रदर्शनी evar! :-P
#
याb
बाईं ओर के बजाय यह बहुत अजीब लगता है ; क्या यह वास्तव में आवश्यक है?