Trên mặt phẳng \(xy\), có một con đường được chắn bởi hai đường thẳng \(y = -100\) và \(y = 100\).
Trong phần đường này mà \(-100 \leq x \leq 100\) có \(n\) điểm. Toạ độ của điểm thứ \(i\) là \((x_i, y_i)\).
Alice sẽ chọn một số thực \(r\) (\(0 < r \leq 100\)) và đặt vòng tròn sao cho tâm của nó tại vị trí \((-10^9, 0)\).
Sau đó, bạn ấy sẽ di chuyển tâm vòng tròn từ \((-10^9, 0)\) đến \((10^9, 0)\).
Bạn ấy sẽ di chuyển vòng tròn (theo bất kỳ hướng nào) sao cho phần chắn của con đường và các điểm không ở phía bên trong (có thể chạm vào viền của đường tròn).
Hãy tìm giá trị \(r\) lớn nhất sao cho tồn tại cách di chuyển tâm đường tròn đến \((10^9, 0)\)
Input
- Dòng đầu tiên gồm một số nguyên dương \(n\) (\(1 \leq n \leq 100\)) - Số lượng điểm trên đường đi
- \(n\) dòng tiếp theo, dòng thứ \(i\) gồm cặp số \(x_i, y_i\) (\(|x_i|, |y_i| \leq 100\)) - Toạ độ của điểm \(i\)
- Dữ liệu đảm bảo không tồn tại hai điểm nào trùng nhau.
Output
- In ra số thực \(r\) lớn nhất, đáp án của bạn được xem là đúng nếu có sai số tuyệt đối hoặc sai số tương đối tối đa là \(10^{-4}\)
Example
Test 1
Input
2
0 -40
0 40
Output
40
Giải thích
- Như hình minh hoạ, chúng ta có thể di chuyển hình tròn với \(r = 40\) từ \((-10^9, 0)\) đến \((10^9, 0)\) bằng cách di chuyển nó theo đường thẳng \(y = 0\). Tại \(x = 0\) hai điểm chạm vào đường tròn, điều này vẫn thoả mãn vì hai điểm không ở trong đường tròn. Bất kỳ \(r\) nào lớn hơn \(40\) sẽ khiến cho đường tròn không di chuyển sang bên kia được nữa, vì vậy giá trị lớn nhất là \(r = 40\).
Test 2
Input
4
0 -10
99 10
0 91
99 -91
Output
50.5
Test 3
Input
10
-90 40
20 -30
0 -90
10 -70
80 70
-90 30
-20 -80
10 90
50 30
60 -70
Output
33.541019662496845446
Test 3
Input
10
65 -90
-34 -2
62 99
42 -13
47 -84
84 87
16 -78
56 35
90 8
90 19
Output
35.003571246374276203