문제
홀수를 좋아하는 홀스는 홀수를 찾아 여행을 떠나고 싶다. $2$차원 좌표평면 위에 $1$번부터 $N$번까지 번호가 부여된 여행지 $N$개가 존재하고, $i$번 여행지는 $(x_{i}, y_{i})$에 위치한다.
홀스는 원하는 여행지에서 시작하여 $N$개의 여행지를 모두 한 번씩 방문하고 끝나는 여행 계획을 세우려고 한다. 이때, 홀스가 여행 계획에 따라 이동해야 할 거리의 합이 홀수가 되도록 여행 계획을 세울 수 있을지 찾아보고, 만약 가능하다면 여행 계획을 출력해 보자.
임의의 두 여행지 $A$, $B$ 사이의 거리는 $|x_{A}-x_{B}|+|y_{A}-y_{B}|$로 정의된다.
입력
첫째 줄에 여행지의 개수 $N$이 주어진다. $(2 \leq N \leq 300\ 000)$
다음 $N$개의 줄에 $i$번 여행지의 좌표 $x_{i}$, $y_{i}$가 공백으로 구분되어 주어진다. $(1 \leq x_{i}, y_{i} \leq 10^6)$
같은 좌표에 둘 이상의 여행지가 존재하지 않으며, 모든 입력은 정수이다.
출력
첫째 줄에 홀스가 여행 계획을 세울 수 있으면 YES, 없으면 NO를 출력한다.
만약 여행 계획을 세울 수 있다면 다음 줄에 방문한 여행지의 순서를 의미하는 $N$개의 여행지 번호를 공백으로 구분하여 순서대로 출력한다.
정답이 여러 가지인 경우 그중 아무거나 출력한다.
예제 입력 1
3 1 2 2 4 3 1
예제 출력 1
YES 1 3 2
예제 입력 2
2 4 4 1 1
예제 출력 2
NO
출처
Contest > BOJ User Contest > 월간 향유회 > 월간 향유회 2023. 11. A번
- 문제를 만든 사람: rustiebeats
- 문제를 검수한 사람: bnb2011, chogahui05, cologne, dohoon, hibye1217, kiwiyou, nflight11, tony9402, utilforever