#L3249. 「COCI 2020.2」Matching

    ID: 4274 传统题 1000ms 256MiB 尝试: 2 已通过: 1 难度: 10 上传者: 标签>图结构二分图数据结构贪心其他构造平面几何扫描线算法

「COCI 2020.2」Matching

题目描述

译自 COCI 2019/2020 Contest #5 T3「Matching」

给定一个偶数 NN,表示二维平面上有 NN 个整点(整点即点坐标均为整数的点)。对于每个整数 aa,最多有两个点坐标为 (a,x)(a,x),类似地,对于每个整数 bb,最多有两个点坐标为 (x,b)(x,b)

你可以在两点之间画一条竖直或水平的线段,请问是否可能画出 N2\frac{N}{2} 条线段,使得每个给出的点都是恰好一条线段的一个端点,且线段之间两两不相交。

输入格式

第一行一个整数 NN,意义如题目描述;

接下来 NN 行,每行两个整数 Xi,YiX_i,Y_i,表示第 ii 个点的坐标。

输出格式

如果不能按题目描述的规定划线,则在第一行输出 NE\texttt{NE}(克罗地亚语中的「否」)。

否则第一行输出 DA\texttt{DA}(克罗地亚语中的「是」)。在接下来的 N2\frac{N}{2} 行,每行输出两个整数 i,ji,j,用一个空格隔开,表示 i,ji,j 两个点间画一条线段。

样例 1

输入

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

输出

DA
1 5
3 7
2 6
4 8

样例 2

输入

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

输出

DA
1 2
3 4
5 6

样例 3

输入

2
1 1
2 2

输出

NE

数据范围与提示

对于所有数据,2N1052\le N\le 10^51Xi,Yi1051\le X_i,Y_i\le 10^5

详细子任务附加限制及分值如下:

子任务 附加限制 分值
1 2N202\le N\le 20,对于任意整数 aa,坐标为 (a,x),(x,a)(a,x),(x,a) 的点都有偶数个 5
2 2N202\le N\le 20
3 2N402\le N\le 40 6
4 2N2×1032\le N\le 2\times 10^3 36
5 无附加限制 48