#include <stdio.h>
int main() {
int n;
while (scanf("%d", &n) && n != 0) {
int a[100][100], r1[100] = { 0 }, c1[100] = { 0 };
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
scanf("%d", &a[i][j]);
if (a[i][j]) {
r1[i]++; c1[j]++;
}
}
}
int countR = 0, countC = 0, changeR, changeC;//countR为奇数行个数,countC为偶数行个数
for (int i = 0; i < n; i++) {
if (r1[i] % 2 != 0) { countR++, changeR = i + 1; }
if (countR > 1) {
printf("Corrupt\n"); break;
}
if (c1[i] % 2 != 0) {
countC++; changeC = i + 1;
}
if (countC > 1) {
printf("Corrupt\n"); break;
}
}
if (countR == 0 && countC == 0) printf("OK\n");
if (countR == 1 && countC == 1) printf("Change bit (%d,%d)\n", changeR, changeC);
}
return 0;
}
poj 错误探测
最新推荐文章于 2019-08-21 02:58:00 发布