AT_arc045_d [ARC045D] みんな仲良し高橋君
题目描述
在二维坐标平面上,给定 $2N+1$ 个坐标各不相同的点。
高桥君想从这些点中组成尽可能多的“好朋友配对”。
满足以下条件的两点可以组成好朋友配对:
- 两个点的 $x$ 坐标或 $y$ 坐标中有一个相等。
但是,每个点最多只能与一个点组成好朋友配对。
高桥君本来想让所有点都组成好朋友配对,但由于点的数量是奇数,这是不可能的。
因此,他决定删除其中任意一个点,然后判断剩下的 $2N$ 个点能否恰好组成 $N$ 组好朋友配对,使所有点都被配对。
请对于每一个点,判断删除该点后,剩下的 $2N$ 个点能否组成 $N$ 组好朋友配对。
输入格式
输入通过标准输入给出,格式如下:
> $N$
> $X_1$ $Y_1$
> $X_2$ $Y_2$
> $\vdots$
> $X_{2N+1}$ $Y_{2N+1}$
- 第 $1$ 行给出一个整数 $N$,表示点的数量满足 $2N+1$。
- 接下来的 $2N+1$ 行,每行包含两个用空格分隔的整数 $X_i$、$Y_i$,表示第 $i$ 个点的坐标为 $(X_i, Y_i)$。
- 对于任意 $i \neq j$,都有 $X_i \neq X_j$ 或 $Y_i \neq Y_j$。
输出格式
输出应写到标准输出,并以换行结尾。
输出共 $2N+1$ 行。
第 $i$ 行,如果删除第 $i$ 个点后,剩下的 $2N$ 个点可以组成 $N$ 组好朋友配对,则输出 `OK`,否则输出 `NG`。
说明/提示
### 部分分
对于满足以下额外限制的数据集,答对可获得 $30$ 分:
- 对所有 $i(1 \leq i \leq 2N)$,都有 $X_i = X_{i+1}$ 或 $Y_i = Y_{i+1}$。
### 样例解释 2
该输入输出样例满足部分分的限制。
由 ChatGPT 4.1 翻译