Cod sursa(job #2406152)

Utilizator alex2209alexPavel Alexandru alex2209alex Data 15 aprilie 2019 14:00:54
Problema Cele mai apropiate puncte din plan Scor 70
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.9 kb
#include <bits/stdc++.h>
#define x first
#define y second
using namespace std;
ifstream f("cmap.in");
ofstream g("cmap.out");
//--------------------------------
//Variabile globale
int n;
pair<double,double>v[100001];
//--------------------------------
//Functii
void citire();
void rezolvare();
//--------------------------------
int main()
{
	citire();
	rezolvare();
	return 0;
}
//--------------------------------
void rezolvare()
{
    double mi = 100000000000000;
	sort(v + 1,v + n + 1);
	for(int i = 1; i <= n; ++i)
		for(int j = i + 1; j <= n,j <= i + 7; ++j)
		{
			double a = sqrt((v[i].x - v[j].x) * (v[i].x - v[j].x) + (v[i].y - v[j].y) * (v[i].y - v[j].y));
            if(a < mi)
                mi = a;
		}
    g << setprecision(7) << fixed << mi;
}
//--------------------------------
void citire()
{
	f >> n;
	for(int i = 1; i <= n; ++i)
		f >> v[i].x >> v[i].y;
}