Cod sursa(job #2456736)

Utilizator EduardSanduSandu Eduard Alexandru EduardSandu Data 15 septembrie 2019 13:28:49
Problema Trapez Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin("trapez.in");
ofstream fout("trapez.out");
struct p{
    double x,y;
}v[1001];
double panta[1000005];
int main()
{
    int n,i,j,nr,k=1,rez = 0,cnt = 1;
    fin>>n;
    for(i=1;i<=n;i++)
    {
        fin>>v[i].x>>v[i].y;
    }
    for(i=1;i<=n;i++)
    {
        for(j=i+1;j<=n;j++)
        {
            if(v[j].x - v[i].x == 0)
                panta[k++]=2000000000;
            else
                panta[k++] = (v[j].y - v[i].y)/(v[j].x - v[i].x);
        }
    }
    sort(panta+1,panta+k);
    for(i=1;i<k;i++)
    {
        if(panta[i] == panta[i+1])
            cnt++;
        else
        {
            rez+=(cnt*(cnt-1))/2;
            cnt = 1;
        }
    }
    fout<<rez;
    return 0;

}