WA 求大佬调试

P1784 数独

```cpp #include<bits/stdc++.h> using namespace std; bool row[101][101],line[101][101],gong[101][101]; int a[101][101]; void print() { for(int i=1;i<=9;i++) { for(int j=1;j<=9;j++) { cout<<a[i][j]<<' '; } cout<<'\n'; } } void dfs(int x,int y) { if(a[x][y]!=0) { if(x==9 && y==9) { print(); } else if(y==9) { dfs(x+1,y); } else { dfs(x,y+1); } } else { for(int i=1;i<=9;i++) { if(!row[x][i] && !line[y][i] && !gong[(x-1)/3*3+(y-1)/3+1][i]) { row[x][i]=1; line[y][i]=1; gong[(x-1)/3*3+(y-1)/3+1][i]=1; a[x][y]=i; if(x==9 && y==9) { print(); } else if(y==9) { dfs(x+1,1); } else { dfs(x,y+1); } row[x][i]=0; line[y][i]=0; gong[(x-1)/3*3+(y-1)/3+1][i]=0; a[x][y]=0; } } return ; } } int main() { memset(row,0,sizeof(row)); memset(line,0,sizeof(line)); memset(gong,0,sizeof(gong)); for(int i=1;i<=9;i++) { for(int j=1;j<=9;j++) { cin>>a[i][j]; if(a[i][j]>0) { row[i][a[i][j]]=1; line[j][a[i][j]]=1; gong[(i-1)/3*3+(j-1)/3+1][a[i][j]]=1; } } } dfs(1,1); return 0; } ```
by I_am_AKed_by_NOI @ 2023-01-13 23:31:14


第二个是改了以后的,但还是 WA。
by I_am_AKed_by_NOI @ 2023-01-13 23:31:41


|