私のindexoutofboundsの問題は解決されていますが、プログラムはコンパイルされませんが、変更されていないパズルが印刷されます。元のパズルを読んでROMの標準入力は、スドクパズルの '空'の代わりに0を持っています。私はarraylistイニシャライザーも含めました。java sudokuソルバの値が変更されない
public ArrayList<Integer> create(){
ArrayList<Integer> possible = new ArrayList<Integer>();
for(int i=1; i<10; i++){
possible.add(i);
}
return possible;
}
public sudoku(int size)
{
SIZE = size;
N = size*size;
Grid = new int[N][N];
for(int i = 0; i < N; i++)
for(int j = 0; j < N; j++)
Grid[i][j] = 0;
}
public void solve()
{
int a, b, c, d, i, j, k, l;
int count = 0;
int value= 0;
for(i=0; i<N;i++){
for(j=0; j<N;j++){
if(Grid[i][j]==0){
ArrayList<Integer> possible = create();
//check row
for(a=0; a<N;a++){
for(b=0; b<N; b++){
if(Grid[a][0]==possible.get(a)){
possible.set(a, 0);
}
}
}
//check column
for(c=0; c<N;c++){
for(d=0; d<N;d++){
if(Grid[0][d]==possible.get(d)){
possible.set(d,0);
}
}
}
for(k=0; k<9; k++){
if(possible.get(k)!=0){
count++;
}
}
if(count==1){
for(l=0; l<9; l++){
if(possible.get(l)!=0){
value=possible.get(l);
}
}
}
Grid[i][j]=value;
}
}
}
}
グリッドのサイズを初期化した場所がわかりませんので、お手数ですが、 (またはあなたを助けることは不可能かもしれません) –
私は本当に興奮していません_グリッド[私] [0] _私は数回を参照してください...それはあなたの問題ではない...まだ。 –
どのラインが故障していますか? –