エイト・クイーンの JavaScript 解法 (Eight queens puzzle) : エイト・クイーンって? エイト・クイーン とは、チェスの盤とコマを使用したパズルの名称です。 エイト・クイーンのルール: チェスの盤上に、8個のクイーンを配置する。 このとき、どの駒も他の駒に取られるような位置においてはいけない。 さっそく本題 解決方法がいくつ存在するのかを、JavaScriptで実装していきます。 このような問題を解決するには バックトラッキング を使用します。 バックトラッキングの解法を配列で表現 配列 (N-Queen) 今回配列で表現したい配置 8Queenなので、8個(0 ~ 7) n0 n1 n2 n3 n4 n5 n6 n7 col 0 1 2 3 4 5 6 7 row 2 4 6 8 3 1 7 5 シンプルに表現すると下記のようになる JavaScriptで表現するとこうなる const queensPosition = [2, 4, 6, 8, 3, 1, 7, 5]; const queensPosition = [ { col: 0, row: 2 }, { col: 1, row: 4 }, { col: 2, row: 6 }, { col: 3, row: 8 }, { col: 4, row: 3 }, { col: 5, row: 1 }, { col: 6, row: 7 }, { col: 7, row: 5 }, ]; 配列を使ってバックトラッキングを適用 バックトラッキング法は最初の0ノードから始まります。 (0, 0) col: 0, row:0 から順に試していきます。 上記を踏まえて、プログラムを書いてみよう と思ったらGitHubに既に色々ありました。。 www パフォーマンスは上げられると思うので、次回やります。 JavaScript class QueenPosition { constructor(rowIndex, columnInde...