さて、私は数独の解決アルゴリズムと生成を扱っていますが、かなり単純なタスクで立ち往生しています。数値が行方向および列方向の位置に本当に収まるかどうかを確認しました。しかし、それが私を怒らせているのは、ブロックチェックです。つまり、数字が本当に 3x3 ブロックに収まるかどうかです。
それは十分に単純でなければなりませんが、私は本当に解決策に到達できません。つまり、マトリックス内の位置が属する 3x3 ブロックを知りたいのです。アサート ケースの一部を次に示します。ブロック番号、行番号、列番号のインデックスは 0 から始まります。
assert("x( 0, 8 ) === 2");
assert("x( 8, 8 ) === 8");
assert("x( 3, 3 ) === 4");
assert("x( 3, 7 ) === 5");
assert("x( 7, 1 ) === 6");
x( i , j )
i
= 行と= 列のブロック番号を返しますj
。