Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- Floyd 알고리즘
- kafka connect #debizium #transform
- 암스트롱 수
- 김씨만행복한세상
- 정올
- kafka #consumer #autoStartup
- Queue
- 페이지전환
- 새로운방
- 오류교정
- 토마토(고)
- 코드그라운드
- hexagonal architecture #layer architecture #아키텍쳐 #헥사고날
- sql #오라클 #oracle #sequence #foreach #insert #mybatis
- 큐
- 스택
- 1037
- 페이지 전환
- 최단거리
- 2613
- 알고리즘
- kafka #ackmode #manual #acknowledge
- 태그를 입력해 주세요.
- Floyd
- JAVA #필수값
- 1045
- vue
- 1108
- maven #메이븐 #빌드 #build #lifecycle
- 새로운 방
Archives
- Today
- Total
별집사의 IT세상
문제은행 1037 오류교정 본문
반응형
행, 열 중 하나를 기준으로 더해본 후 세가지 경우로 나누어서 생각한다. (여기서는 행을 기준으로 생각)
1. 각 행의 합이 모두 짝수이다
2. 각 행의 합이 하나만 홀수이다
3. 각 행의 합이 두개 이상 홀수이다
이 상황에서 앞의 기준의 반대(행이 기준이였으면 열)를 위와 마찬가지로 세가지로 나눌 수 있다. (여기서는 열을 기준으로 생각)
1. 각 행의 합이 모두 짝수이고 각 열의 합도 모두 짝수이다 -> OK
2. 각 행의 합이 하나만 홀수이고, 각 열의 합도 하나만 홀수이다 -> Change bit
3. 각 행의 합이 두개 이상 홀수이거나, 각 열의 합이 두개 이상 홀수이다. -> Corrupt
#includeint main() { int a[101][101]; int N; int i, j; int x, y; int sumx; int sumy; int index = 0; // 0이면 OK 1이면 Change bit(i,j) 2이면 Corrupt int check = 0; scanf("%d", &N); //행 부분 계산 for (i = 1; i <= N; i++) { sumx = 0; for (j = 1; j <= N; j++) { scanf("%d", &a[i][j]); sumx = (sumx + a[i][j]) % 2; } if (sumx && !check) { check++; x = i; index = 1; } else if (sumx && check) { index = 2; break; } } //열 부분 계산(위에서 이미 틀린경우에는 계산할 필요가 없으므로 if문으로 통과) if (index == 2) { } else { check = 0; for (i = 1; i <= N; i++) { sumy = 0; for (j = 1; j <= N; j++) { sumy = (sumy + a[j][i]) % 2; } if (sumy && !check) { check++; y = i; index = 1; } else if (sumy && check) { index = 2; break; } } } //결과 if (index == 0) { printf("OK"); } else if (index == 1) { printf("Change bit (%d,%d)", x, y); } else printf("Corrupt"); return 0; }
간단하게 할 수 있을 것도 같은데 졸려서 나중에 기회가 된다면 생각을...
반응형
'IT > 정올' 카테고리의 다른 글
알고리즘 1108 페이지전환 (0) | 2017.04.15 |
---|---|
알고리즘 2613 토마토 (0) | 2017.04.14 |
문제은행 1045 암스트롱 수 (0) | 2017.04.08 |
Comments