30
ゴルフイタチプログラム
リチャードドーキンスは彼の本The Blind Watchmakerでイタチプログラムについて説明しています。アルゴリズムは次のように説明できます。 28文字のランダムな文字列から始めます。有効な文字はすべて大文字とスペースです。 その文字列のコピーを100個作成し、その文字の文字ごとに5%の確率でランダムな文字に置き換えます。 新しい文字列をターゲット「METHINKS IT IS LIKE A WEASEL」と比較し、文字列内の正しい文字と正しい位置にある文字の数に応じてそれぞれにスコアを付けます。 新しい文字列のいずれかに完全なスコア(28)がある場合、停止します。 ステップ3から最高得点の文字列を選択します。タイの計算方法はユーザー次第ですが、選択できる文字列は1つだけです。選択した文字列を取得して、手順2に進みます。 勝者は、各世代の最高得点の文字列を次の形式で印刷しながら、正しい答えを得るための最短のコードスニペットになります。 人々が他の人々の答えをチェックすることで助けてくれるなら、とても役に立ちます!