Skip to content

Latest commit

 

History

History
60 lines (47 loc) · 2.05 KB

README.md

File metadata and controls

60 lines (47 loc) · 2.05 KB

16433 주디와 당근농장

랭크 상태
Bronze I, 16433 주디와 당근농장 성공

문제 분석

N × N 크기의 밭에 당근을 심는데, 당근을 심을 땐 상하좌우 어디에도 당근이 없어야 합니다. (R, C)에 당근이 심어져 있다고 할 때, 가장 빽빽히 당근이 심긴 밭의 모양을 출력하는 문제입니다.

풀이

있고, 없고, 있고, 없고, ...를 반복해서 교차로 심으면 가장 많이 심을 수 있습니다. 그렇다면 (R, C)가 어디인지는 중요하지 않습니다. 짝수열인지 홀수열인지와 짝수행인지 홀수행인지가 중요할 뿐입니다. 만약 짝수열-짝수열이거나 홀수열-홀수열이면 다음과 같이 배치가 될 것입니다.

1 2 3 4 5
1 v . v . v
2 . v . v .
3 v . v . v
4 . v . v .
5 v . v . v

그렇지 않다면 다음과 같이 배치가 될 것입니다.

1 2 3 4 5
1 . v . v .
2 v . v . v
3 . v . v .
4 v . v . v
5 . v . v .

행과 열의 짝수/홀수 여부가 같은 경우 각 행과 열의 짝수/홀수 여부가 같을 때만 심습니다. 다른 경우 각 행과 열의 짝수/홀수 여부가 다를 때만 심습니다. 짝수/홀수 여부는 mod 2를 통해 구할 수 있습니다. (r % 2 == c % 2) == (x % 2 == y % 2)일 때만 심도록 하면 됩니다.