早く!ブラックホールを脱出せよ!


28

87,539,319年であり、今では孤独な宇宙遊泳が当たり前になっています。多くの人が自分で宇宙に飛び込み、背中のジェットパックだけで推進され、進行中にパソコンとキーボードでコースをプログラミングします。

あなたはそのような人です。あなたは、美しく、静かな宇宙遊泳に出かけましたが、突然、あなたはブラックホールの重力に捕らわれました!

あなたがこのブラックホールに向かって急降下し、内側に向かってより速く螺旋を描いているとき、あなたが生き残るための唯一のチャンスは苦痛のメッセージを放送することであり、近くの船があなたを救助することを願っています。

そのため、キーボードをブレークアウトし、プログラムを打ち解き始めます。

プログラムは任意の言語で作成できHELP!、stdoutに出力する必要があります(PCはすべてのstdoutを宇宙の奥深くまで放送します)。

ただし、ブラックホールの近くにいると、キーボードはゆっくりと細断されます!

以下のようなQWERTYキーボードを使用しており、ブラックホールが左側にあると仮定します。

QWERTYキーボードレイアウト

左右のシフトは2つの異なるキーであることを忘れないでください。

キーを押すたびに、キーボードの左端の列(左端の赤い線で覆われたキー)がはぎ取られ、ブラックホールに飛び込みます。

だから、あなたの最初のキー入力はキーボードの任意のキーかもしれないが、その後の以降なしから左端 TabCapsShiftCtrlまたは`キーを使用することができるすべてで。(r-shiftおよびr-ctrlは引き続き使用できます)

次キー押下後、キーは1QAZおよびAlt深淵に投げつけされ、その後、使用されなくてもよいです。その後、あなたが失うSpaceXSW2など。

明らかに、プログラムをできるだけ早く完了して、レスキュー時間が長くなるようにします。したがって、これはコードゴルフであり、キーを押すことで最短のプログラム勝ちます!

各回答にはキー入力のリストが含まれている必要があるため、私の回答がこのプログラムであった場合(言語squardibblyack)

!HELP\.

キーリストは次のようになります。

Shift!HELP リリースシフト \.

長さ:8

私はこの挑戦が難しすぎるかもしれないと心配していますが、提出された種類の答えを見たいです!


13
あまりにも多くの創造性を持つにはあまりにも制約されていると感じているので、私はこれを否定しています。
isaacg

4
printSTDOUTの資格なしでpythonシェルを使用すると仮定できますか?
user80551

3
キーボードに数字パッドがある場合はどうなりますか?
mbomb007

4
これは、矢印キーを使用すると若干改善される可能性があります。
user80551

6
キーが消えたのに押された場合、Caps Lockはまだ有効ですか?
ジョシュキャスウェル

回答:


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
まあ、私はGolfScriptでこれを行うことができませんでした。少し長すぎます。整数からASCIIへの変換は非効率的です。"HELP*")9-[]+''+。最後の4つを入力できません。
mbomb007

3
私はちょうど... CJamが答えを持っていることを知っていた
ジェリーエレミヤ

9
したがって、世界で最も将来性のある言語の1つは、明らかにCJamです。
Fors

5
を押すと指をE見て、深byに取り込まれる可能性があります!
カナダのルーク州立モニカ

3

rs、10キーストローク(ユーザーがNanoを使用していると仮定)

または、Shiftテキストを選択しない同等のエディター。

これは実際にはプログラミング言語ではありませんが、sedCode Golfでrs使用できる場合は使用できます。

Right Shift ! Left E Left H Right L P Enter

HELP!

空の文字列を「HELP!」に置き換えるだけで、効果的に画面に出力されます。sedスクリプトとほぼ同等:

s/^/HELP!/

クールな部分は、区切り文字()が見つからない置換パターンの前にrs自動的に配置さ^/れる/ことです。コードのインデントに便利です。


それEnterもストロークであることを忘れます。10ストローク。
vapcguy

1
@vapcguyそう。一定。
kirbyfan64sos

-3

私は、任意の言語は、その後、「P」または引用符またはアスタリスクか何かのようないくつかの文字、単語を必要とする予定ですので、これは任意のスクリプトで行うことができる最速は、ランダムの11 Pythであると信じてHELP!、それはE行くつもりされます迅速、前にカーソルバックを移動するための余分なキーを押すことを意味Eして置くためにH、彼が見つけたために、その後転送し、再び、LP

dispまたはなどのコマンドワードを必要とするものがある場合は、echoそれが引き裂かれる前にスペースを最初に実行する必要がShiftあります!。次に、Homeキーを使用して単語を開始し、矢印キーをランダムに説明しHELPます。しかし、あなたはただ吸われるか、それらのいずれかを行うには速すぎて必要なキーを失うまで、あなたの方法を手探りするでしょう。そこ14文字の唯一最大のだし、それはあなたの最後の1であると仮定しています\|。あなただけで10が必要ですHELP!

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

定義する"または*またはPが直前に押されHます。11が最速でなければなりません。または、感嘆符を省略してすべてを大文字にし、入力する記号がない場合は9。

しかし、いや、私は、87,539,319年およびすべての年にインターネットの歴史家であり、エイリアンと異常な流星群、そしてブラックホールについては妄想的です。宇宙遊泳に出かける前に、準備ができていたはずです。この記事を読んで、研究に感謝していることがわかりました。既に「HELP!」が含まれているテキストファイルをロードします。その中に、最新の追跡衛星データを使用してそのファイルに私の座標位置を書き込むことができるプログラムがあります。このプログラムは「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。コードがというファイルに既に存在するという前提ではありません。第三に、プログラムを実行するのではなく、プログラムのキーストロークのリストを提供することになっています。第4に、Cプログラム
オプティマイザー

1
...そのように実行しないでください。最初にそれらをコンパイルして実行する必要があります。したがって、コンパイル済みのコードファイルを実行するには、少なくともhelp.exe(またはhelp.out)実行する必要があります。最後に、ルールを曲げて抜け穴を利用しているのであれば、単にファイルを呼び出すだけではh.cどうですか?
オプティマイザー

.cファイルの目的は、コンパイラを必要とする実際のCコードではなく、CSCRIPTである可能性があることです。持つことは、h.c名前の唯一の1つの文字で、別のファイルの名前を入力しようとしたとき、それが誤って代わりに別のファイルで呼び出されることを、意味するかもしれない-私はすでにそれを説明しました。どのようにあったコード.c、それはあったかどうか、ファイルConsole.Log("HELP!")Console.WriteLine("HELP!")など、それはまた、座標修正を取得するために衛星とインターフェースするためのコードを含めるつもりだった、特に以来、大部分は無関係です-将来的には私は確信している何かがオープンになりますソース。
vapcguy

この記事で私のポイントは、あまりにも、ファイル名、またはルールの範囲外の何かを持つ、それだけのために10を要するため、ところで11回のキーストロークを、倒すための唯一の方法であることを行っていたことを示すためだったHELP!私が述べたように、大文字と小文字を区別せずShift HELPキーを使用しても問題がなく、感嘆符など、またはキービーを入力しなければならない場合など、文字の前後に文字を入力する必要がない場合pまたは*、プログラムを開始する文字。
vapcguy

そして、help.exeそしてhelp.outブラックホールの離れたキーのリッピングでは動作しません。e時間で消えてしまうexe思い付いた、とt入力しようとしたときになくなっていますout。最初にtinを入力しout、次にHomeを押してHELPパーツを入力できますが、拡張子を1文字に保つことができたら、どうしてですか?
vapcguy
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.