Cod sursa(job #1968124)

Utilizator cristibogdanPatrascu Cristian cristibogdan Data 17 aprilie 2017 15:00:52
Problema Cele mai apropiate puncte din plan Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.72 kb
#include <fstream>
#include <algorithm>
#include <iomanip>
#include <cmath>
using namespace std;
ifstream f("cmap.in");
ofstream g("cmap.out");
int i,n,j;
long long Min;
struct du{
    int x,y;}points[100003];
    int cmp(du a,du b){
        return a.x<b.x;}
int main()
{
    f>>n;
    for(i=1;i<=n;i++)
        f>>points[i].x>>points[i].y;
    sort(points+1,points+n+1,cmp);
    Min=(1ll<<60);
    for(i=1;i<=n;i++)
        for(j=i+1;j<=n;j++){
            if(points[j].x-points[i].x>Min)
                break;
            Min=min(Min,1ll*(1ll*(points[j].x-points[i].x)*(points[j].x-points[i].x)+1ll*(points[j].y-points[i].y)*(points[j].y-points[i].y)));
}
g<<setprecision(6)<<fixed<<sqrt(Min);
    return 0;
}