Cod sursa(job #2485641)

Utilizator BAlexandruBorgovan Alexandru BAlexandru Data 1 noiembrie 2019 20:44:52
Problema Trapez Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <fstream>
#include <algorithm>

using namespace std;

ifstream f("trapez.in");
ofstream g("trapez.out");

int n,i,j;
int x[1001], y[1001];
int nrm;
long double m[1000001];
long long rez;

int main()
{
    f>>n;
    for (i=1;i<=n;i++)
        f>>x[i]>>y[i];

    for (i=1;i<n;i++)
        for (j=i+1;j<=n;j++)
        {
            nrm++;
            m[nrm]=(1.0*(y[j]-y[i]))/(1.0*(x[j]-x[i]));
        }

    sort(m+1,m+nrm+1);

    i=1;
    while (i<=nrm)
    {
        j=i;
        while (m[j]==m[i])
            j++;
        if (j-i>1)
        rez+=((j-i)*(j-i-1))/2;
        i=j-1;
        i++;
    }

    g<<rez;

    return 0;
}