UVA 541
在输入的数据中计算行的和,如果是奇数,记下出现的次数,计算列的和,如果是奇数,记下出现的次数,没有奇数,说明是pairity property,只出现一次奇数,则说明可以改
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 #include<stdio.h> 2 #define MAX 100 3 int main() 4 { 5 int i,j,m[MAX][MAX],n,c,r,sum,flag1,flag2; 6 while(scanf("%d",&n)&&n) 7 { 8 sum=0; 9 for(i=0;i<n;i++) 10 for(j=0;j<n;j++) 11 scanf("%d",&m[i][j]);//接收矩阵 12 flag1=flag2=0; 13 for(i=0;i<n;i++) 14 { 15 for(j=0;j<n;j++) 16 sum+=m[i][j]; 17 if(sum%2==1) 18 { 19 flag1++; 20 r=i+1; 21 } 22 sum=0;// 23 } 24 sum=0; 25 for(i=0;i<n;i++) 26 { 27 for(j=0;j<n;j++) 28 sum+=m[j][i]; 29 if(sum%2==1) 30 { 31 flag2++; 32 c=i+1; 33 } 34 sum=0;// 35 } 36 if(flag1==0&&flag2==0) 37 printf("OK\n");// 38 else if(flag1==1&&flag2==1) 39 printf("Change bit (%d,%d)\n",r,c);// 40 else printf("Corrupt\n"); 41 } 42 return 0; 43 }