삼색정리

월간 향유회 2024. 07. A번 BOJ 32102번
시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB89413510518.551%

문제

다음 조건들에 부합하도록 $N$행 $M$열 격자판의 각 칸을 색칠해 보자.

  • 빨간색 칸이 $R$개, 초록색 칸이 $G$개, 파란색 칸이 $B$개여야 한다.
  • 상하좌우로 이웃한 두 칸의 색은 서로 달라야 한다.

입력

첫째 줄에 격자판의 행의 개수와 열의 개수를 각각 나타내는 정수 $N$, $M$이 공백으로 구분되어 주어진다. $(2 \leq N, M \leq 2\,000)$ 

둘째 줄에 사용 가능한 세 가지 색상의 개수 $R$, $G$, $B$가 공백으로 구분되어 주어진다. $(1 \le R, G, B \le N\times M;$ $R + G + B = N \times M)$

출력

주어진 조건에 맞게 격자판을 색칠할 수 있다면 첫째 줄에 YES, 불가능하다면 NO를 출력한다.

색칠할 수 있다면 다음 $N$줄에 걸쳐 색칠된 격자판을 출력한다. 그중 $r$번째 줄 $c$번째 문자로는 격자판의 $r$행 $c$열에 있는 칸이 빨간색이면 R, 초록색이면 G, 파란색이면 B를 출력한다. $(1 \le r \le N;$ $1 \le c \le M)$

가능한 방법이 여러 가지라면 그중 아무거나 출력한다.

예제 입력 1

2 3
1 3 2

예제 출력 1

YES
GBG
RGB

예제 입력 2

3 3
4 4 1

예제 출력 2

YES
RGR
GBG
RGR

예제 입력 3

3 4
4 4 4

예제 출력 3

YES
RGRB
GBGR
BRBG

예제 입력 4

2 3
4 1 1

예제 출력 4

NO

출처

Contest > BOJ User Contest > 월간 향유회 > 월간 향유회 2024. 07. A번

  • 문제를 만든 사람: rustiebeats
  • 문제를 검수한 사람: bnb2011, chogahui05, djs100201, heeda0528, kiwiyou, lky7674, pjshwa, snrnsidy, utilforever