Pagini recente » Cod sursa (job #2506078) | Cod sursa (job #89267) | Cod sursa (job #2788612) | Cod sursa (job #246323) | Cod sursa (job #1621494)
#include <stdio.h>
#include <vector>
#include <algorithm>
#include <math.h>
using namespace std;
#define ll long long unsigned
#define pb push_back
#define mp make_pair
pair <int, int> p[100005];
double dist(pair <int, int> x, pair<int, int> y){
double d1,d2;
d1 = 1LL*(x.first-y.first)*(x.first-y.first);
d2 = 1LL*(x.second-y.second)*(x.second-y.second);
return d1+d2;
}
int main(){
int j,i,n,a,b;
freopen("cmap.in", "r", stdin);
freopen("cmap.out", "w", stdout);
scanf("%d",&n);
for(i = 1;i <= n;i++){
scanf("%d %d",&a,&b);
p[i].first = a;
p[i].second = b;
}
sort(p+1, p+n+1);
double dmn = dist(p[1], p[2]);
for(i = 3;i <= n;i++){
for(j = i-1;j >= 1;j--){
if(p[i].first - p[j].first > dmn){
break;
}
dmn = min(dmn, dist(p[i], p[j]));
}
}
dmn = sqrt(dmn);
printf("%.6f\n",dmn);
return 0;
}