Cod sursa(job #783708)

Utilizator misinozzz zzz misino Data 3 septembrie 2012 17:23:14
Problema Cele mai apropiate puncte din plan Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include<fstream>
#include<cstdio>
#include<algorithm>
#include<cmath>
using namespace std;
ifstream f("cmap.in");
FILE *g;
int i,j,n;
double d;
struct punct{
	int x,y;
};
punct v[100001];
bool cmp(punct a,punct b)
{if(a.x<b.x)
	return 1;
return 0;
}
double dist1(int i,int j)
{return (double) sqrt ((double)(v[i].x-v[j].x)*(v[i].x-v[j].x)+(v[i].y-v[j].y)*(v[i].y-v[j].y));
}
int main()
{f>>n;
g=fopen("cmap.out","w");
for(i=1;i<=n;++i)
	f>>v[i].x>>v[i].y;
sort(v+1,v+n+1,cmp);
d=1000000000;
for(i=1;i<=n;++i)
	for(j=i+1;j<=n&&j<=7;++j)
		if(dist1(i,j)<d)
			d=dist1(i,j);
fprintf(g,"%.6f\n",d);
return 0;
}