Cod sursa(job #2595896)

Utilizator aser.cobaschiCobaschi Aser aser.cobaschi Data 8 aprilie 2020 16:45:32
Problema Trapez Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <bits/stdc++.h>
using namespace std;
#define oo 2000000010;
ifstream f("trapez.in");
ofstream g("trapez.out");

const int N=1010;
vector <double> s;
int n,x[N],y[N],nrp;
long double panta(int xA,int xB,int yA,int yB)
{
    if(xA==xB)
        return oo;
        return
        ((double)(yB-yA))/((double)(xB-xA));

}

int main()
{
    f>>n;
    for(int i=1;i<=n;i++)
        f>>x[i]>>y[i];
    for(int i=1;i<n;i++)
        for(int j=i+1;j<=n;j++)
     {s.push_back(panta(x[i],x[j],y[i],y[j]));
       nrp++;}
     sort(s.begin(),s.end());
     long long l=1;
     long long tr=0;
     for(int i=1;i<s.size();i++)
     {

         if(s[i]==s[i-1])
            l++;
         else
            {tr+=l*(l-1)/2;
            l=1;}
     }

     tr+=l*(l-1)/2;
     g<<tr;


       return 0;
}