Pagini recente » Cod sursa (job #2910830) | Cod sursa (job #1402086) | Cod sursa (job #803168) | Cod sursa (job #2708835) | Cod sursa (job #2084010)
#include <bits/stdc++.h>
#define NMAX 100005
using namespace std;
ifstream fin("cmap.in");
ofstream fout("cmap.out");
pair<int, int> v[NMAX];
bool cmpy(pair<int, int> A, pair<int, int> B) {
return A.second < B.second;
}
long long dist(pair<int, int> A, pair<int, int> B) {
return 1LL*(A.first-B.first)*(A.first-B.first) + 1LL*(A.second-B.second)*(A.second-B.second);
}
int main() {
int i,n,j;
long long ans=1000000000LL*1000000000LL,res;
fin >>n;
for(i=1;i<=n;++i) fin>>v[i].first>>v[i].second;
sort(v+1,v+n+1);
for(i=1;i<=n;++i) {
for(j=-70;j<=70;++j) {
if(j == 0) continue;
if(i-j<1 || i+j>n) continue;
res = dist(v[i], v[i-j]);
cout<<res<<' ';
ans = min(res,ans);
}
}
sort(v+1,v+n+1,cmpy);
for(i=1;i<=n;++i) {
for(j=-70;j<=70;++j) {
if(j == 0) continue;
if(i-j<1 || i+j>n) continue;
res = dist(v[i], v[j]);
ans = min(res,ans);
}
}
fout<<fixed<<setprecision(6)<<sqrt(ans);
return 0;
}