#P16174. [Ncpc2023]缠绕Intertwined
[Ncpc2023]缠绕Intertwined
题目描述
NCPC(Nordic Cargo Plane Control)正在测试一种新的货机发动机。为此,他们把一根结实且无限细的绳子一端固定在测试平台中心,另一端固定在发动机上。
在测试平台上建立坐标系,使绳子固定点位于原点,并沿着 轴正方向铺到 ,其中 是绳长。平台上还有若干根无限细的柱子。柱子会挡住绳子,但不会挡住发动机。
发动机启动后,绳子开始绕原点逆时针旋转,直到碰到一根柱子。此时绳子被该柱子挂住,并开始绕这根柱子逆时针旋转。因为有一段绳子被固定在原点和这根柱子之间,发动机继续旋转时的半径会变小。这个过程不断进行,直到剩余绳长无法再够到任何其他柱子。
进行这些测试、购买无限细绳子、布置无限细柱子都很昂贵。而且工人还会被这些无限细物体割出纸片般的伤口。因此,更经济的做法是直接模拟这一过程。
输入格式
第一行包含两个整数 ,分别表示柱子数量和绳长。
接下来 行,每行包含两个整数 ,表示第 根柱子的坐标。所有柱子都不在初始绳子上。
$$1\le n\le 10^5,\qquad 1\le d\le 10^9,\qquad -10^9\le x_i,y_i\le 10^9$$输出格式
输出一行一个整数 ,表示最终绳子会绕输入中的第 根柱子旋转。注意柱子编号从 开始。
如果绳子不会碰到任何柱子,则输出 。保证将输入中的 改变至多 不会改变答案 。
输入输出样例 #1
输入 #1
5 200
4 4
4 -4
3 1
-4 4
-4 -4
输出 #1
1