#P111. scape

scape

题目描述

Tohka\texttt{Tohka} 暴走了!

暴走的 Tohka\texttt{Tohka} 决定用自己的秘密武器把小 HH 劈成两半。好消息是小 HHTohka\texttt{Tohka} 的武器提前有一定了解,他可以据此规划如何逃生。

具体来说,初始时小 HHTohka\texttt{Tohka} 两个人都视作位于 xOyxOy 坐标系原点 (0,0)(0,0) 的质点。约定小 HH 开始逃跑的时刻为 t=0t=0

HH 已知 Tohka\texttt{Tohka} 的武器由若干线段构成,但他不知道这些线段的具体形态,只知道所有线段端点都属于集合 {(0,0),(x1,y1),(x2,y2),,(xn,yn)}\{(0,0),(x_1,y_1),(x_2,y_2),\ldots,(x_n,y_n)\} ,其中 i,(xi,yi)(0,0)\forall i, (x_i,y_i)\neq (0,0)

Tohka\texttt{Tohka} 只能以 1/s1 ^\circ /s 的角速度绕着 (0,0)(0,0) 顺时针旋转这把武器,小 HH 也只能以 1m/s1m/s 的速度沿 xx 轴正半轴逃跑。若某个 t>0t>0 的时刻,小 HHTohka\texttt{Tohka} 武器上的任意一点(包括线段的端点)接触,小 HH 就视为被武器击中而未能逃生。

经过交涉,Tohka\texttt{Tohka} 同意让小 HH 先跑 kk 秒(即 Tohka\texttt{Tohka}t=kt=k 秒时开始旋转武器),但是如果 kk 的值太大或者不是一个整数, Tohka\texttt{Tohka} 很可能会意识到自己被耍了,从而直接把小 HH 扬了。

由于小 HH 过于恐慌无法思考,请你帮助他求出最坏情况下,小 HH 最少需要提前逃跑的整秒数 kk

输入格式

第一行输入一个正整数 n(n2×105)n\,\,(n\leq 2\times10^5) ,含义见题目描述。

接下来 nn 行,每行输入两个整数 xi,yix_i,y_i, (xi109,0<yi109)(|x_i|\leq 10^9,0 < y_i \leq 10^9) ,描述点的坐标,保证任意两点不重合。

为了避免浮点数误差,数据保证小 HH 最坏情况下提前逃跑恰好被击中的时间与 kk 的差值大于 10610^{-6}

输出格式

一行,输出一个非负整数 kk ,表示最少需要提前逃跑的整秒数。

输入输出样例 #1

输入 #1

3
1 1
-1 1
0 4

输出 #1

0

输入输出样例 #2

输入 #2

5
-5 13
19 2
2 16
-7 16
17 12

输出 #2

14

说明/提示

下图展示了样例 11TohkaTohka 武器的几种(并非全部)可能样式:

在以上三种情况下,TohkaTohka 的武器提前旋转 (452)(45-\sqrt{2}) 秒才能击中小 HH 。可以证明不存在更坏的情况,因此小 HH 无需提前逃跑,k=0k=0 .