| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1 초 | 1024 MB | 195 | 85 | 72 | 41.618% |
찬우는 더 이상 지구나 나무 같은 따분한 것을 평평하게 만들기에 지쳤다. 대신 체스의 아름다움에 푹 매료되어 체스판을 평평하게 만들기로 결심했다!
"잠깐 wait! 체스판은 원래 평평한거 아닌가요?"
날카로운 지적이다. 하지만 의심이 많은 찬우는 굳이 체스판이 평평한지 직접 확인을 해보려고 한다. 먼저, 찬우는 나숍(Knishop)이라는 기물을 준비했다. 나숍(Knishop)은 체스에서 나이트외 비숍의 특징을 합친 기물로, 2ドル \times 1$만큼 대각선으로 이동하거나 대각선 방향으로 원하는 만큼 이동할 수 있다.
체스판에서 나숍이 이동할 수 있는 곳
이제 찬우는 준비한 나숍을 체스판의 임의의 위치에 두고, 해당 위치를 시작으로 모든 체스판의 칸을 정확히 1번씩만 들르는 Knishop-tour를 할 것이다. 모든 칸을 들르면서 각 칸의 높이가 일정한지 확인하는 것으로 찬우는 체스평평설을 자신있게 지지할 수 있게 될 것이다.
마침 찬우는 동방에서 체스평평설의 좋은 근거가 되어줄 수 있는 2ドル \times M$ 모양의 체스판을 발견했지만, 정작 어떤 순서로 Knishop-tour를 돌아야 할지 몰라 곤경에 처했다. 찬우를 도와 Knishop-tour 경로를 대신 만들어주자!
첫 번째 줄에 체스판의 크기를 나타내는 $M$이 주어진다. 이는 체스판이 2ドル \times M$ 모양임을 의미한다. $(1 \le M \le 10000)$
주어진 체스판에서 Knishop-tour가 가능하다면 첫 번째 줄에 YES를 출력한다.
이후 2ドル \times M$개의 줄에서는 Knishop-tour의 경로를 차례대로 출력한다. 각 $i$번째 줄에는 Knishop-tour의 $i$번째 보드칸의 위치 $(x_i,y_i)$를 공백으로 구분하여 출력해야 하며, 1ドル \le x_i \le 2, 1 \le y_i \le M$을 만족해야 한다.
이때 경로의 시작 및 끝 좌표는 아무 곳에서 시작할 수 있고, 아무 곳에서 끝날 수 있다. 문제의 조건을 만족하는 경로가 여러가지일 경우 아무거나 출력해도 된다.
Knishop-tour가 불가능하다면 첫 번째 줄에 NO를 출력한다.
2
NO
3
YES 1 1 2 3 1 2 2 1 1 3 2 2
University > POSTECH > 2025 POSTECH Programming Contest > Contest K번
University > POSTECH > 2025 POSTECH Programming Contest > Open Contest K번