शीघ्र! ब्लैक होल से बचो!


28

यह वर्ष 87,539,319 है और एकान्त अंतरिक्ष में घूमना अब आम बात है, बहुत से लोग खुद से अंतरिक्ष में यात्रा करते हैं, कुछ भी नहीं बल्कि अपनी पीठ पर एक जेटपैक, एक पर्सनल कंप्यूटर और कीबोर्ड के साथ अपने पाठ्यक्रम को प्रोग्रामिंग करते हुए चलते हैं।

आप एक ऐसे व्यक्ति हैं; आप एक सुंदर, शांतिपूर्ण स्पेसवॉक पर निकले थे, जब अचानक, आप एक ब्लैक होल के गुरुत्वाकर्षण से भड़क गए थे!

जैसा कि आप इस ब्लैक होल की ओर बढ़ते हैं, कभी भी अंदर की ओर तेजी से सर्पिलिंग करते हैं, आपको लगता है कि आपके जीवित रहने का एक मौका एक संकट भरे संदेश को प्रसारित करना है, और आशा है कि पास का जहाज आपको बचाने के लिए आता है।

तो, आप अपने कीबोर्ड को तोड़ देते हैं, और एक प्रोग्राम टाइप करना शुरू करते हैं।

आपका कार्यक्रम किसी भी भाषा में हो सकता है, और उसे HELP!stdout में प्रिंट करना होगा (आपका PC सभी stdout को अंतरिक्ष की गहराई में प्रसारित करता है।)

हालाँकि, जब आप एक ब्लैकहोल के पास होते हैं, तो आपका कीबोर्ड धीरे-धीरे किनारे तक चीर जाता है!

मान लें कि आप नीचे दिए गए की तरह एक QWERTY कीबोर्ड का उपयोग कर रहे हैं, और यह कि ब्लैकहोल आपके बाईं ओर है;

QWERTY कीबोर्ड लाइन

याद रखें, बाएँ और दाएँ बदलाव दो अलग-अलग कुंजी हैं।

हर कीप के बाद, आपके कीबोर्ड की बाईं-सबसे पंक्ति (बाईं ओर सबसे लाल रेखा द्वारा कवर की गई) बंद हो जाती है और ब्लैक होल में प्रवाहित हो जाती है!

तो, अपनी पहली कुंजी दबाने कीबोर्ड पर किसी भी कुंजी हो सकता है, लेकिन फिर बाद में से कोई भी से वाम-पंथी Tab , Caps, Shift, Ctrlया `चाबियाँ, इस्तेमाल किया जा सकता सब पर । (r-shift और r-ctrl अभी भी इस्तेमाल किया जा सकता है)

अगले कुंजी दबाने के बाद, कुंजी 1, Q, A, Zऔर Altरसातल में दराज कर रहे हैं, और उसके बाद नहीं किया जा सकता। उसके बाद, आप खो देते हैं Space, X, S, W, 2और इसके आगे।

जाहिर है, आप अपने कार्यक्रम को जितनी जल्दी हो सके पूरा करना चाहते हैं, ताकि बचाव-समय में वृद्धि हो; इसलिए, यह कोड-गोल्फ है, और प्रमुख प्रेस में सबसे छोटा कार्यक्रम जीतता है!

प्रत्येक उत्तर को कुंजीपट की एक सूची प्रदान करनी चाहिए, इसलिए, यदि मेरा उत्तर यह कार्यक्रम था (भाषा स्क्वार्डिब्लेक में)

!HELP\.

एक कीलिस्ट दिख सकती है:

Shift!HELP रिलीज की पारी \.

लंबाई: 8

मुझे चिंता है कि यह चुनौती बहुत कठिन हो सकती है, लेकिन मुझे जवाब प्रस्तुत करने के प्रकार देखना अच्छा लगेगा!


13
मैं इसे कम कर रहा हूँ क्योंकि यह बहुत रचनात्मकता के लिए विवश महसूस करता है।
इसहाक

4
क्या हम यह मान सकते हैं कि अजगर के खोल का उपयोग printSTDOUT के रूप में योग्य नहीं है?
user80551

3
यदि मेरे कीबोर्ड में एक नंबर पैड है तो क्या होगा?
mbomb007

4
यह तीर कुंजी के साथ थोड़ा बेहतर हो सकता है।
user80551

6
यदि कुंजी गायब हो गई है तो क्या कैप्स लॉक अभी भी प्रभावी है?
जोश कैसवेल

जवाबों:


42

CJam, 11 कीस्ट्रोक्स

कोड है

"HELP*")9-

और कीलिस्ट है

Shift"HELP*") रिलीज की पारी 9-

और यह कैसा दिखता है इसका एक प्रदर्शन है:

यहाँ छवि विवरण दर्ज करें

और यहां बताया गया है कि कोड कैसे काम करता है:

"HELP*"              "This puts the string HELP* on stack";
       )             "This takes out the last character of the string and puts it
                      on the stack as a character";
        9-           "This simply reduces 9 from the ASCII code of * character
                      present on the stack which makes it an !";
                     "CJam automatically prints everything that is on stack";

यहाँ कोड का प्रयास करें


2
तारांकन का उपयोग करना बहुत चालाक था! मैंने ऐसा कभी नहीं सोचा था।
theonlygusti

2
वैसे, मैं गोल्फक्राफ्ट में ऐसा करने में असमर्थ था। यह बहुत लंबा है। पूर्णांक से अस्सी में परिवर्तित करना अक्षम्य है। "HELP*")9-[]+''+। मैं अंतिम चार टाइप नहीं कर सकता।
mbomb007

3
मुझे सिर्फ इतना पता था कि सीजेएम का जवाब होगा ...
जेरी जेरेमिया

9
तो दुनिया में सबसे भविष्य की प्रूफ भाषाओं में से एक जाहिरा तौर पर CJam है।
फोर्स

5
जब आप हिट करते हैं तो अपनी उंगली देखें E, ऐसा लगता है कि यह रसातल में ले जाया जा सकता है!
कनाडाई ल्यूक ने

3

rs , 10 कीस्ट्रोक्स (मानता है कि उपयोगकर्ता नैनो का उपयोग कर रहा है)

या समकक्ष संपादक जहां Shiftपाठ का चयन नहीं करता है।

यह वास्तव में एक प्रोग्रामिंग भाषा नहीं है, लेकिन अगर sedकोड गोल्फ पर इस्तेमाल किया जा सकता है, तो rsइसका इस्तेमाल किया जा सकता है।

Right Shift ! Left E Left H Right L P Enter

HELP!

यह सिर्फ "मदद" के साथ खाली स्ट्रिंग को प्रतिस्थापित करता है, इसे प्रभावी रूप से स्क्रीन पर प्रिंट करता है। मोटे तौर पर सेड स्क्रिप्ट के बराबर:

s/^/HELP!/

ठंडा हिस्सा यह है कि rsस्वचालित रूप ^/से एक प्रतिस्थापन पैटर्न के सामने रखता है जहां सीमांकक ( /) नहीं मिला है। कोड इंडेंट करने के लिए आसान।


आप भूल जाते हैं कि Enterएक स्ट्रोक भी है। 10 स्ट्रोक।
vapcguy

1
@vapcguy राइट। फिक्स्ड।
kirbyfan64sos

-3

मेरा मानना ​​है कि किसी भी स्क्रिप्ट में यह सबसे तेज हो सकता है, रैंडम 11 पाइथ के साथ है, क्योंकि किसी भी भाषा के लिए कुछ वर्ण की आवश्यकता होती है, जैसे "p" या एक उद्धरण चिह्न या तार या कुछ, फिर शब्द HELP!, और वह Eजाने वाला है त्वरित, कर्सर वापस जाने के लिए अतिरिक्त कुंजी दबाव अर्थ से पहले Eमें डालने के लिए Hकी तरह उन्होंने पाया आगे फिर, है, तो Lऔर P

यदि आपके पास कुछ भी है, जिसे कमांड शब्द की आवश्यकता है, जैसे dispया echo, तो आपको पहले एक जगह करनी होगी, इससे पहले कि यह फट जाए Shiftऔर !, फिर Homeअपना शब्द शुरू करने के लिए कुंजी का उपयोग करें , और तीर कुंजियों को रैंडम के लिए वर्णित के रूप में HELP। लेकिन आप अपने रास्ते को तब तक लड़ते रहेंगे जब तक कि आप बस चूसे नहीं जाते या उन कुंजियों को खो देते हैं जिनकी आपको आवश्यकता है उनमें से कोई भी करने के लिए बहुत जल्दी। अधिकतम 14 वर्ण हैं, और यह माना जाता है कि आपका अंतिम एक \या है |। आपको केवल 10 करने की आवश्यकता है HELP!:

SHIFT ! HOME E LT ARROW H RT ARROW L P ENTER

परिभाषित "या *या Pबस से पहले दबाया जाएगा H। तो 11 को सबसे तेज होना है। या 9 अगर हम विस्मयादिबोधक को छोड़ दें और सब कुछ कैपिटलाइज़ करें और टाइप करने के लिए एक प्रतीक नहीं है।

लेकिन नहीं, मुझे, वर्ष 87,539,319 और सभी में एक इंटरनेट इतिहासकार होने के नाते, और एलियंस और पागल उल्का बौछार से पागल होने के नाते, अकेले ब्लैक होल को जाने दो, मैं उसके लिए समझौता नहीं करूंगा। इससे पहले कि मैं अंतरिक्ष-घूमने जाता, मैं तैयार हो जाता, इस लेख के साथ मैंने अपने शोध में पाया कि इसके लिए धन्यवाद। मैं एक पाठ फ़ाइल लोड करूँगा जिसमें पहले से ही "मदद" है! इसमें, और एक प्रोग्राम है जो उस फ़ाइल में हमारे नवीनतम ट्रैकिंग उपग्रह डेटा का उपयोग करके मेरी समन्वय स्थिति लिख सकता है। उस कार्यक्रम को मैं "hlp.c" कहूंगा, इसलिए यह होगा:

7 कीस्ट्रोक्स:

c Home h l p . Enter

मुझे लगता है मैं अपने फ़ाइल नाम कम कर सकता है, लेकिन कोई भी टाइपिंग द्वारा दुर्घटना से उनकी स्थिति प्रसारित करना चाहता है Hऔर Enterहै, खासकर अगर कार्यक्रम भी अधिकारियों को सचेत (911 कॉल करते समय एक आपातकालीन नहीं है जब की तरह एक छोटे से?) तो चलो एक 3-अक्षर फ़ाइल नाम के साथ जाएं, और हम मान लेंगे कि अभी भी हमारे पास .1 और न्यूनतम चरित्र वाले फ़ाइल एक्सटेंशन हैं । इसके अलावा, इसका नामकरण करने के hlpबजाय helpहम उन बुरा, अंतर्निहित मदद सुविधाओं को प्राप्त करने से बचते हैं जब हम एक ब्लैक होल में मरने वाले होते हैं। मुझे लगता है कि मैं भी .cबस कर के टाइपिंग छोड़ सकता है h l p Enter, लेकिन इस तरह मैं उन बुरा Please supply file extensionया से बचेंCannot find hlpत्रुटि जब मैं एक ब्लैक होल में चूसा जा रहा हूँ। "कचरा, कचरा बाहर", सब के बाद, भविष्य में अभी भी एक मानक होगा।

तो मेरा ग्राफिक कैसा दिखेगा:

यहाँ छवि विवरण दर्ज करें

और यह भी याद रखना आसान होगा, क्योंकि एकमात्र "पिछड़ेपन" cपहले टाइप कर रहा है । बाकी फाइल नाम की तरह ही है।


2
सबसे पहले, यदि आप किसी प्रोग्राम को चलाने जा रहे हैं (जिसमें पहले से ही कोड है) तो इसे कई मानक खामियों का एक संयोजन माना जा सकता है । दूसरे, यह एक कोड-गोल्फ है, इसलिए आपको वास्तविक कोड देना होगा, न कि यह धारणा कि कोड पहले से ही एक फाइल नामक फाइल में मौजूद है hlp.c। तीसरे, आपको प्रोग्राम के लिए कीस्ट्रोक्स की सूची प्रदान करनी चाहिए, न कि प्रोग्राम को चलाना। चौथा, Cप्रोग्राम ...
ऑप्टिमाइज़र

1
... ऐसे मत भागो। आपको पहले उन्हें संकलित करने और उन्हें चलाने की आवश्यकता है। तो संकलित कोड फ़ाइल को चलाने के लिए आपको कम से कम help.exe(या help.out) करना होगा । और अंत में, यदि आप नियमों को झुका रहे हैं और खामियों का उपयोग कर रहे हैं, तो बस एक फ़ाइल क्यों नहीं है h.c?
ऑप्टिमाइज़र

.cफ़ाइल के साथ अभिप्राय यह था कि यह CSCRIPT हो सकता है, वास्तविक C कोड नहीं जो संकलक की आवश्यकता होगी। होने h.cका अर्थ हो सकता है जब, एक और फ़ाइल के नाम में टाइप करने के लिए कोशिश कर रहा है नाम में केवल 1 चरित्र के साथ यह है कि यह गलती से किसी अन्य फ़ाइल के बजाय कहा जाता है - मुझे लगता है कि पहले से ही समझाया। .cफ़ाइल में जो भी कोड था , चाहे वह था Console.Log("HELP!"), Console.WriteLine("HELP!")आदि, काफी हद तक अप्रासंगिक है, खासकर जब से यह एक समन्वित फिक्स प्राप्त करने के लिए उपग्रहों के साथ कोड को शामिल करने के लिए भी जा रहा था - मुझे यकीन है कि भविष्य में कुछ खुलेगा स्रोत।
vapcguy

इस पोस्ट के साथ मेरी बात, यह भी इंगित करना था कि एक फ़ाइल का नाम, या नियमों की सीमा के बाहर कुछ, 11 कीस्ट्रोक्स, btw को हरा करने का एकमात्र तरीका होने जा रहा था, क्योंकि इसमें 10 का समय लगता है HELP!, जैसा कि मैंने उल्लेख किया है किर्बी से पहले, और केवल 9, जैसे कि यदि कैपिटलाइज़ेशन और शिफ्ट का उपयोग करने से कोई फर्क नहीं पड़ता है और हमारे पास पहले या बाद का चरित्र नहीं है HELP, जैसे कि विस्मयादिबोधक बिंदु, या किर्बी के मामले में, एक कुंजी टाइप करने के लिए चरित्र, pया *कार्यक्रम शुरू करने के लिए।
vapcguy

और help.exeऔर help.outब्लैक होल की चाबियों का अलग फाड़ के साथ काम नहीं करेंगे। eसमय से चला जाएगा exeआया था, और tजब टाइप करने के लिए कोशिश कर चला गया है out। आप टाइप कर सकते हैं tमें out, पहले, तो होम दबाते हैं, और टाइप HELPहिस्सा है, लेकिन यदि आप, तुम क्यों नहीं होता 1 चरित्र को विस्तार रख सकता है?
vapcguy 20
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.