풀이
처음에 주어진 입력이 모두 0이거나 1일 경우 '0' 또는 '1'이 정답이 되지만,
위의 경우가 아닌 경우 사분면을 'Z' 순서대로 살펴보며 주어진 영역에 대해 모두 하나의 값이 존재할 때까지 recursive call 방식으로 풀이하면 된다.
문제에서 주어진 예제를 살펴보자.
색 (빨 - 주 - 연) 순서대로 분할할 것이며, 색상별 동그라미는 각 분할 시점의 기준 좌표가 된다.
기준좌표에 recursive를 거쳐 줄어든 크기(size)만큼의 영역에 대해 다시 탐색을 시도해 나가며 풀이하면 된다.
참고로 입력의 제한 중 다음과 같은 조건이 있기 때문에
"N은 언제나 2의 제곱수로 주어지며"
recursive할 영역을 무조건 2로 나누어 범위를 재설정하면 된다.
소스코드
출처
'PS > Baekjoon Online Judge' 카테고리의 다른 글
[백준 27959] 초코바 [Python] (0) | 2023.04.17 |
---|---|
[백준 5525] IOIOI [Python] (0) | 2023.04.15 |
[백준 20833] Kuber [Python] (0) | 2023.04.13 |
[백준 9782] Median [Python] (0) | 2023.04.12 |
[백준 27110] 특식 배부 [Python] (0) | 2023.04.12 |