Cod sursa(job #588572)

Utilizator stef93Stefan Gilca stef93 Data 8 mai 2011 17:57:05
Problema Triang Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <fstream>
#include <iostream>
#include <cmath>
#include <algorithm>
using namespace std;

struct pct{ double x,y;}a[1503];
int n;

double dist(pct x,pct y)
{
       return (x.x-y.x)*(x.x-y.x)+(x.y-y.y)*(x.y-y.y);
}
bool cmp(pct x,pct y)
{
     return x.x<y.x;
}

int equal(double R1, double R2) {   
if (fabs(R1 - R2) < 1e-6) // 1e-4 = 0.0001       
return 1;   
return 0; }

int main()
{
    int i,nrt=0,j,k;
    ifstream in("triang.in");
    ofstream out("triang.out");
    in>>n;
    for(i=0;i<n;i++)
    in>>a[i].x>>a[i].y;
    in.close();
    sort(a,a+n,cmp);
    for(i=0;i<n;i++)
    for(j=i+1;j<n;j++)
    for(k=j+1;k<n && equal(dist(a[i],a[j]),dist(a[j],a[k]))&&equal(dist(a[k],a[i]),dist(a[j],a[k]))&&equal(dist(a[k],a[i]),dist(a[i],a[j]));k++)
    nrt++;
    out<<nrt<<'\n';
    out.close();
    return 0;
}