数独のように、2D 配列をボックスに分割するのに問題があります。ボード オブジェクトに正方形の配列があり、それらを 2x3 または 3x3 のボックスに分割したいと考えています。ボックス オブジェクトには、正方形を追跡するための 1D 配列があります。
k はボックス番号です。9x9 の数独では、ボックスには 0 から 8 までの番号が付けられます。
int l = 0;
for(int i=k*a; i<k*a+a;i++){
for(int j=k*b;j<k*b+b;j++){
narray[l]=brd.getSquare(i,j);
brd.getSquare(i,j).setBox(this);
l++;
}
これは最初のボックスを正しく取得しますが、その後はオフになります。私はこれについて何時間も考えてきましたが、頭を包むことができないようです. 誰もこれのためのきちんとしたトリックを持っていますか?