题目描述
给定n*n由0和1组成的矩阵,如果矩阵的每一行和每一列的1的数量都是偶数,则认为符合条件。 你的任务就是检测矩阵是否符合条件
输入
多组测试数据;
对于每组数据:
输入n + 1行,第1行为矩阵的大小n(0 < n <= 100),以下n行为矩阵的每一行的元素,元素之间以一个空格分开。
输出
如果矩阵符合条件,则输出OK;
否则,输出Corrupt。
代码实现
#include<stdio.h>
int main()
{
int n,i,j;
while(~scanf("%d",&n)){
int a[n][n];
int row=0,col=0,sum;
//输入数组
for(i=0;i<n;i++)
for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
//判断行数
for(i=0;i<n;i++){
sum=0;
for(j=0;j<n;j++){
sum+=a[i][j];
}
if(sum%2){
row=1;
break;
}
}
//判断列数
for(j=0;j<n;j++){
sum=0;
for(i=0;i<n;i++){
sum+=a[i][j];
}
if(sum%2){
col=1;
break;
}
}
//输出结果
if((row+col)==0)
printf("OK\n");
else
printf("Corrupt\n");
}
return 0;
}