Pagini recente » Cod sursa (job #2826031) | Cod sursa (job #2448217) | Cod sursa (job #528820) | Cod sursa (job #299438) | Cod sursa (job #828809)
Cod sursa(job #828809)
#include <algorithm>
#include <cmath>
#include <fstream>
#include <iostream>
#include <vector>
#include <iomanip>
using namespace std;
ifstream in("cmap.in");
ofstream out("cmap.out");
int n;
vector <pair<int,int > > v;
double dist(const pair<int, int> & a, const pair<int, int> & b){ // distanta fara sqrt
double xd=(a.first-b.first);
double yd=(a.second-b.second);
return xd*xd + yd*yd;
}
double min(double x,double y){
if(x<y)
return x;
return y;
}
int main(){
int i,x,y;
in>>n;
v.reserve(n);
for(i=1;i<=n;++i){
in>>x>>y;
v.push_back(make_pair(x,y));
}
sort(v.begin(),v.end());
double result= 1000000000ll;
int j;
for(i=0;i<n;++i){
for(j=i+1;j<n&&j<=i+7;++j){
result=min(result,dist(v[i],v[j]));
}
}
out<<fixed<<setprecision(6)<<sqrt(result);
return 0;
}