7
Bejeweled / match 3ゲームに動きがあるかどうかを判断する
バックグラウンド 宝石をちりばめたようなゲームでは、プレイヤーは同じ色の3つを連続して一致させるために、8x8の宝石の隣接する2つの宝石を交換する必要があります。宝石は、水平または垂直に一致させることができます。ゲームプレイは動きがなくなるまで続けられ、その結果、3回連続でゲームが終了します。 仕事 目標は、宝石をちりばめたゲームがまだ終わっていないかどうかを判断するプログラムを書くことです。言い換えれば、少なくとも3つ連続して移動する可能性があるかどうかを確認する必要があります。連続して3つ以上の宝石が存在する可能性がありますが、それでも有効な動きです。 入力 プログラムは、標準入力を介してBejeweledグリッドの8x8表現を受け入れる必要があります。7つの宝石の色はそれぞれ、1〜7の数字で表されます。各行には1行が含まれ、それぞれ8桁で構成される8行が入力されます。例を参照してください。入力は常にこの形式に従い、3行連続して入力されることは決してないと想定できます。 出力 プログラムは、次いで、必要があります(標準出力に)出力yes又はno少なくとも一つの有効な動きは、その行に3つ以上の宝石をもたらす存在するか否かに応じ。プログラムは、yesまたはのいずれかの単一のインスタンス以外を出力してはなりませんno。 ルール プログラムは外部ファイルやリソース、コマンドライン引数を使用したり、特定のファイル名を要求したりしてはいけません。ソースコードのバイト数が最も少ないプログラムが優先されます。 例 入力: 12314131 13224145 54762673 61716653 61341144 23453774 27645426 75575656 出力: yes 入力: 35261546 76421754 15743271 62135642 35617653 64565476 54427254 15635465 出力: no 追加のテストケースについては、以下のMT0の回答を参照してください。