65,210
社区成员
发帖
与我相关
我的任务
分享
bool sudoku(int g[9][9]) {
bool judge[15];
memset(judge, 0, sizeof(judge));
for (int i = 0; i < 9; i++) {
memset(judge, 0, sizeof(judge));
for (int j = 0; j < 9; j++) {
if (judge[g[i][j]]) {
return 0;
} else {
judge[g[i][j]] = true;
}
}
}
memset(judge, 0, sizeof(judge));
for (int i = 0; i < 9; i++) {
memset(judge, 0, sizeof(judge));
for (int j = 0; j < 9; j++) {
if (judge[g[i][j]]) {
return 0;
} else {
judge[g[i][j]] = true;
}
}
}
memset(judge, 0, sizeof(judge));
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
memset(judge, 0, sizeof(judge));
for (int k = 3*i; k < 3*(i+1); k++) {
for (int l = 3*j; l < 3*(j+1); l++) {
if (judge[g[k][l]]) {
return 0;
} else {
judge[g[k][l]] = true;
}
}
}
}
}
return true;
}