警告:このチャレンジには、The Secret of Monkey Islandの軽度のネタバレが含まれています。
ゲームの終わりに向かって、魔法のように保存されたナビゲーターの頭がカタコンベを通り抜けます。
あなたはその眼球のネックレスを必要としますが、頭はあなたにそれを与えることに消極的です。それを得る一つの方法は、ただ物beいをすることです:
Guybrush:ネックレスを頂けますか?
頭:いいえ、でも丁寧に質問してくれてありがとう。
ガイブラシ:おいおいおい
頭:あなたはあなたが望むすべてを請うことができますが、あなたはそれを持つことはできません。
ガイブラシ:可愛がって?
頭:あなたはあなたが望むすべてを請うことができますが、あなたはそれを持つことはできません。
ガイブラシ:プリティプリティください?
頭:あなたはあなたが望むすべてを請うことができますが、あなたはそれを持つことはできません。
Guybrush:砂糖を上に乗せてください。
頭:ああ、大丈夫、あなたは大きな赤ちゃん。きみにあげる。ねえ、肩がなければネックレスは何がいい?
チャレンジ
上記のダイアログを印刷する完全なプログラムを作成します。キャッチは、プログラムが呼び出されるたびに、2行(GuybrushとHeadの応答によって訴えられる1行)だけを印刷することです。たとえば、投稿がPythonで記述されている場合、使用方法は次のようになります。
$> python please.py
Guybrush: May I please have that necklace?
Head: No, but thanks for asking so politely.
$> python please.py
Guybrush: Oh come on, pleeeeease?
Head: You can beg all you want, but you can't have it.
$> python please.py
Guybrush: Pretty please?
Head: You can beg all you want, but you can't have it.
$> python please.py
Guybrush: Pretty PRETTY please?
Head: You can beg all you want, but you can't have it.
$> python please.py
Guybrush: Pretty please with sugar on top?
Head: Oh, all right, you big baby. You can have it. Hey, what good's a necklace if you don't have shoulders?
プログラムを5回以上呼び出すと、未定義の動作が発生する可能性があるため、ループするか、最後の2行を出力し続けるか、5回目の呼び出し後にプログラムが壊れることもあります。
作業ディレクトリ内のファイルに書き込むことも、プログラム自体のソースコードを変更して呼び出しを追跡することもできます。後者の場合、プログラムは独自のファイル名に依存してはなりません。(前者の場合、プログラムのファイル名は、プログラムが依存するファイル名と衝突しないと仮定できます。)
REPLのような環境を想定したり、呼び出し間でデータをRAMに保持したりしないでください。たとえば、Mathematicaで答える場合、呼び出し間でカーネルを終了すると仮定する必要があります。
これはコードゴルフで、最短回答(バイト単位)が勝ちです。プログラムが、最初の呼び出しの前に存在する追加ファイルに依存している場合、その名前と内容をバイトカウントに追加します。
node please.js
。5つの異なる出力を生成して5 回呼び出すことができます。