给定一个具有 $n$ 个顶点的正多边形。我们从中选择了 $m$ 条对角线。我们想要知道是否存在一对相交的对角线(共用端点不算作相交)。
编写一个程序:
- 从标准输入读取多边形和所选对角线的描述,
- 检查是否存在一对相交的对角线,
- 将结果写入标准输出。
输入格式
输入的第一行包含两个整数 $n$ 和 $m$ ($4 \le n \le 1\,000\,000$, $2 \le m \le 10\,000\,000$),用单个空格分隔,分别表示多边形的顶点数和所选对角线的数量。接下来的 $m$ 行包含对角线的描述。每行包含两个整数 $a_{i}$ 和 $b_{i}$ ($1 \le a_{i}, b_{i} \le n$),用单个空格分隔,表示连接顶点 $a_{i}$ 和顶点 $b_{i}$ 的对角线(多边形的顶点按逆时针方向编号为 $1$ 到 $n$)。你可以假设每对定义单个对角线的数字都构成一条合法的对角线(不是同一个顶点,也不是多边形的边)。输入中的所有对角线各不相同。
输出格式
输出的第一行也是唯一一行应包含:
- 一个单词
NIE(波兰语中的“否”),如果不存在相交的对角线对,或者 - 两个不同的整数 $p$ 和 $q$ ($1 \le p, q \le m$, $p \neq q$),用单个空格分隔,表示相交的对角线的编号。如果存在多个正确答案,程序可以输出其中任意一个。对角线按其在输入中出现的顺序编号。
样例
输入 1
6 4 3 6 1 4 6 2 2 5
输出 1
2 3
输入 2
6 2 1 3 1 5
输出 2
NIE
在上图中,实线表示第一个样例中的对角线,虚线表示第二个样例中的对角线。