문제
별로 좋지 못한 전화 회사가 있는데, 이 회사에서 초고속 인터넷을 제공한다는 광고를 하려고 한다.
일단 지금은 두 지점을 직접 연결하는 초고속 인터넷 전용선만 설치하고 그 속도를 측정해서 광고를 내려고 한다.
전용선을 설치하는 데 드는 비용은 두 지점 사이의 거리에 비례하여 증가하므로,
비용을 절약하기 위해 가장 가까운 두 지점을 찾아내야 한다.
조금 더 정확하게 설명하자면, 한 평면 위에 여러 개의 점이 주어졌을 때,
가장 거리가 짧은 두 지점을 찾아내야 하는데, 그 거리는 어떤 제한 거리보다 짧아야 한다.
가장 가까운 두 지점의 거리가 특정 거리 이상이면 설치비용이 많이 들기 때문에 다른 홍보 방법을 찾아보려고 한다.
입력
입력의 첫째 줄에는 점의 개수를 나타내는 정수 N(0≤N≤100,000)이 입력된다.
그 밑으로 N줄에 걸쳐서 N개의 2차원 위치를 나타내는 좌표들이 입력되다.
두 수는 각각 x좌표와 y좌표를 나타낸다.
모든 좌표의 값은 0 이상 1,000,000 이하다.
출력
가장 가까운 거리가 10,000 미만이라면 그 거리를 소수 5자리에서 반올림하여 4자리까지 출력한다.
그렇지 않다면 "INFINITY"를 출력한다.
예제1
입력
3
0 0
10000 10000
20000 20000
출력
INFINITY
예제2
입력
5
0 2
6 67
43 71
39 107
189 140
출력
36.2215
출처
uva 10245