22
三目並べゲームオーバーを決定するためのアルゴリズム
私は三目並べのゲームをJavaで書いており、ゲームの終了を判断する私の現在の方法は、ゲームが終了する可能性のある次のシナリオを説明しています。 ボードがいっぱいで、勝者はまだ宣言されていません:ゲームは引き分けです。 クロスが勝った。 サークルが勝ちました。 残念ながら、それを行うために、これらのシナリオの事前定義されたセットをテーブルから読み取ります。ボード上に9スペースしかないため、これは必ずしも悪いことではなく、テーブルは少し小さいですが、ゲームが終了したかどうかを判断するより良いアルゴリズム的な方法はありますか?誰かが勝ったかどうかの判断は問題の核心です。9つのスペースがいっぱいであるかどうかを確認することは簡単です。 テーブルメソッドが解決策になるかもしれませんが、そうでない場合は何ですか?また、ボードのサイズが異なる場合はどうなりn=9ますか?何それは、言ってはるかに大きいボードれた場合n=16、n=25など連続して配置項目の数を引き起こし、上にあるように勝つためにx=4、x=5など?すべてに使用する一般的なアルゴリズムn = { 9, 16, 25, 36 ... }?