Cod sursa(job #1730268)

Utilizator Alexandru_Arama Alexandru Alexandru_ Data 16 iulie 2016 17:55:04
Problema Triang Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.01 kb
#include <iostream>
#include <fstream>
#include <cmath>

using namespace std;

int a[1501][1501],i,j,k,n,ct;
struct nod {double x,y;};
nod v[1001];
int dist (double x1, double y1, double x2, double y2)
{
    double t=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1))*1.000;
    t*=1000;
    return t;
}
double x,y;
int main()
{
    ifstream fin ("triang.in");
    ofstream fout ("triang.out");
    fin>>n;
    for(i=1;i<=n;i++)
    {
        fin>>x>>y;
        x*=1000;
        x=ceil(x);
        y*=1000;
        y=ceil(y);
       // y/=1000;x/=1000;
        v[i].x=x;v[i].y=y;
    }
    for(i=1;i<=n;i++)
    {
        for(j=i+1;j<=n;j++)
        {
            int t=dist(v[i].x,v[i].y,v[j].x,v[j].y);
            a[i][j]=a[j][i]=t;
        }
    }
    for(i=1;i<=n;i++)
    {
        for(j=i+1;j<=n;j++)
        {
            for(k=j+1;k<=n;k++)
                if(a[i][j]/1000==a[j][k]/1000 && a[i][k]/1000==a[i][j]/1000)
                ct++;
        }
    }
    fout<<ct;
    return 0;
}