程序设计能力实训

1246. 最近点对

单点时限: 2.0 sec

内存限制: 256 MB

在二维平面上,有$n$个点。

两点之间的距离,即欧几里得距离,等于$\sqrt{(x_i-x_j)^2+(y_i-y_j)^2}$。

比如,$(1,3),(4,5)$两点之间的距离是$\sqrt{(1-4)^2+(3-5)^2}=\sqrt{13}$。

在$n$个点的所有点对中,你需要从中找出一个点对,使得他们之间的距离是最小的。

输出这个最小距离。

输入格式

第$1$行是一个整数$n$,$2 \leqslant n \leqslant 100000$。
接下来$n$行,每行两个浮点数,$x,y$,表示该点的坐标,浮点数的范围是Double.NEGATIVE_INFINITYDouble.POSITIVE_INFINITY

输出格式

输出一个浮点数,最小的距离值。

结果保留2位小数。

样例

Input
3
-1.5 0
0 0
0 1.5
Output
1.50
不限期开放

题目列表