Cod sursa(job #2133849)

Utilizator sandu.m.mdMorari Sandu sandu.m.md Data 17 februarie 2018 13:17:51
Problema Cele mai apropiate puncte din plan Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.91 kb
#include <iostream>
#include <fstream>
#include <vector>
#include <limits>
#include <math.h>
#include <iomanip>

#define per pair<double, double>

using namespace std;
ifstream fin("cmap.in");
ofstream fout("cmap.out");

vector<per> vec;
int n;
double minim = numeric_limits<double>::max();
double x, y, aux;

double len(per a, per b)
{
    return sqrt(pow(a.first - b.first, 2) + pow(a.second - b.second, 2));
}

int main()
{

    fin >> n;
    for (int i = 0; i < n; i++)
    {
        fin >> x >> y;
        vec.push_back(make_pair(x, y));
    }

    //cout << "m: " << minim << "\n";

    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++)
        {
            if (i != j)
            {
                aux = len(vec[i], vec[j]);
                if (minim > aux){
                    minim = aux;
                }
            }
        }
    }   

    fout << setprecision(8) << minim << "\n";

    return 0;
}