#include <stdio.h>
int num[100][100]={0};
int line1[100]={0};
int line2[100]={0};
int line1_cal(int n); //행의 합 계산
int line2_cal(int n); //열의 합 계산
int main(void)
{
	int n, i, j, a1, a2;
	scanf(" %d", &n);
	for(i=0; i<n; i++)
	{
		for(j=0; j<n; j++)
			scanf(" %d", &num[i][j]);
	}
	//-1=오류 없음 -2=오류가 많음 그외=오류가 행과 열에 각각 하나씩 존재
	a1=line1_cal(n);
	a2=line2_cal(n);
	if(a1==-1 && a2==-1)
		printf("OK");
	else if(a1>=0 && a2>=0)
		printf("Change bit (%d,%d)", a1+1, a2+1);
	else
		printf("Corrupt");
	return 0;
}
int line1_cal(int n)
{
	int i, j, a, c=0;
	for(i=0; i<n; i++)
	{
		for(j=0; j<n; j++)
		{
			if(num[i][j]==1)
				line1[i]+=num[i][j];
		}
		//printf("1: %d - %d\n", i, line1[i]);
		if(line1[i]%2!=0)
		{
			c++;
			a=i;
		}
	}
	if(c==0)
		return -1;
	else if(c==1)
		return a;
	else
		return -2;
}
int line2_cal(int n)
{
	int i, j, a, c=0;
	for(i=0; i<n; i++)
	{
		for(j=0; j<n; j++)
		{
			line2[i]+=num[j][i];
		}
		//printf("2: %d - %d\n", i, line2[i]);
		if(line2[i]%2!=0)
		{
			c++;
			a=i;
		}
	}
	if(c==0)
		return -1;
	else if(c==1)
		return a;
	else
		return -2;
}
										2018.06.09 09:17				
				정올 - 실전대비 - 오류교정(1037)
																																			조회 수 212					추천 수 0					댓글 0