시간 제한메모리 제한제출정답맞힌 사람정답 비율
2.5 초 512 MB56231128.947%

문제

You are given N, where N is even, points on a plane that have integer coordinates. For each integer a, there are at most two points with coordinates (a, x). Analogously, for each integer b, there are at most two points with coordinates (x, b).

You are able to draw horizontal or vertical line segments between pairs of given points. Is it possible to draw N/2 lines such that each of the given points is an endpoint of exactly one line segment and that no two line segments intersect?

입력

The first line contains an even integer N (2 ≤ N ≤ 100 000) from the task description.

The i-th of the next N lines contains two integers Xi, Yi (1 ≤ Xi, Yi ≤ 100 000), coordinates of the i-th point.

출력

If it is not possible to draw the line segments as explained in the task statement, you should output "NE" (NO in Croatian) in a single line.

Otherwise, you should output "DA" (YES in Croatian) in the first line. In each of the next N/2 lines you should output two space-separated integers i and j (1 ≤ i, j ≤ N), which represent indices of the points that are connected with a drawn line segment.

서브태스크

번호배점제한
15

2 ≤ N ≤ 20, for each integer a, there is an even number of points with coordinates (a, x) and an even number of points with coordinates (x, a).

26

2 ≤ N ≤ 20

37

2 ≤ N ≤ 40

440

2 ≤ N ≤ 2000

552

No additional constraints.

예제 입력 1

8
1 1
1 3
2 2
2 4
3 1
3 3
4 2
4 4

예제 출력 1

DA
1 5
3 7
2 6
4 8

예제 입력 2

6
1 2
1 3
2 1
2 4
3 2
3 3

예제 출력 2

DA
1 2
3 4
5 6

예제 입력 3

2
1 1
2 2

예제 출력 3

NE

채점 및 기타 정보

  • 예제는 채점하지 않는다.