この挑戦は、私が最近娘と楽しんでいるフィオナ・ワットとレイチェル・ウェルズによる幼い子供向けの本に触発されました。
それぞれの本で、マウス(図示されているが、テキストの一部ではない)は、同じタイプの5つのものの連続がそのものではないと文句を言う。次に、Thingの一部のコンポーネントが期待するプロパティを持っていないことを宣言することにより、これをバックアップします。
質問の6回目に、マウスはその物を見つけ、期待される特性があるので喜んでいます。
典型的な例のテキストは次のとおりです。
That's not my bunny, its tail is too fluffy.
That's not my bunny, its paws are too rough.
That's not my bunny, its tail is too woolly.
That's not my bunny, its eyes are too shiny.
That's not my bunny, its nose is too wrinkled.
That's my bunny! Its ears are so soft.
さて、ほとんどのプログラミング関係者は、これがテキストを生成する非常にアルゴリズム的な方法であることを認識するでしょう。これは非常に明確なプロセスであるため、コードを記述することでこれを再現できるはずです。
3つの単語のコレクションから始めましょう。
things = ["dinosaur", "lamb", "princess", "reindeer", "train"]
parts = ["back", "bells", "body", "bows", "crown", "dress", "ears",
"engine", "fan", "flippers", "funnel", "hooves", "horns", "neck",
"nose", "roof", "sash", "side", "spines", "spots", "tail", "teeth",
"tiara", "wheels", "windows"]
properties = ["bumpy", "fluffy", "furry", "fuzzy", "glittery", "glossy",
"hairy", "red", "rough", "rusty", "shiny", "silky", "slippery",
"soft", "sparkly", "squashy", "thick", "velvety", "woolly"]
- まず、どの種類のものを説明するかを決定します。
- それから5回、「それは私の[もの]ではない、その[部分]は[プロパティ]である」という行を生成します。
- 最後に、「That's my [thing]!that [part] is so [property]!」という行を生成します。
チャレンジ
- 「それは私ではない...」ストーリーのテキストを生成します。
- 同じテキストを一貫して再現してはなりません。
- それはコードゴルフですので、最小バイト数でそれを試みてください。
- 好きな言語を使用してください。
- 空白は重要ではありませんが、行間に改行文字が必要です。
- ソースワードのリストは回答の一部ではありません(TIOではヘッダーに追加できます)。
- 元の単語のリストの名前を変更できます。
- 出力は、端末に出力することも、オブジェクトに生成されるテキストにすることもできます。
- オンライン通訳へのリンクを含めてください。
- 複数形を無視して、「その角は」は結構です。
- 意味をなす必要はありません。プリンセスの漏斗がふわふわしすぎている場合は、そう言ってください。
サンプル出力:
That's not my train, its engine is too rusty.
That's not my train, its hooves is too thick.
That's not my train, its sash is too fuzzy.
That's not my train, its tail is too velvety.
That's not my train, its horns is too glittery.
That's my train! Its hooves is so hairy.
ハッピーゴルフ!