部分的に塗りつぶされたボードを示す Typescript の数独問題
P粉135799949
P粉135799949 2023-09-08 00:14:34
0
1
549

js 数独ジェネレーターを練習用に ts ジェネレーターに変換することに成功しましたが、唯一の問題は、完全な数独ボードのみを出力するようにする方法です。現在は、ディスクが完了しているかどうかに関係なく出力されるため、正しいディスクが表示されるまで更新する必要があります。

完全なディスクのみを出力する次の関数の書き方がわかりません:

リーリー

これはすべて私のコードです:

ああああ

P粉135799949
P粉135799949

全員に返信(1)
P粉638343995

空白セルに有効な数字を追加できないことが判明した場合、この関数は不完全な数独ボードを返します。

この問題を解決するには、関数は次のようにする必要があります:

  • 正しいバックトラッキングを実装します。つまり、失敗した移動を元に戻します。
  • 関数がブール値 (成功/失敗を示す) を返すようにします。配列はその場で変更され、呼び出し元がこれらの変更にアクセスできるため、puzzleArray を返す必要はありません。
    • これは、NEW_BOARD = fillBoard(BLANK_BOARD);ということも意味します。副作用として、NEW_BOARDBLANK_BOARD
    • は同じ Sudoku ボードを参照しており、 Long は空白です (したがって、誤解を招く名前です)。
  • 成功するとループを中断/戻ります。

以下は変更された実装です:

リーリー 呼び出し元は戻り値を確認する必要がありますが、白紙の状態から開始すると、戻り値として true

が得られることが保証されます。したがって、これを行うことができます: ### リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート