Cod sursa(job #2623048)

Utilizator StefansenNegulescu Stefan Stefansen Data 2 iunie 2020 15:27:51
Problema Trapez Scor 40
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.9 kb
#include<iostream>
#include<fstream>
#include<algorithm>
#include<cmath>
#include<vector>
using namespace std;

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

struct points
{
    double x,y;
}points[1005];


int main()
{
    int N, nr = 1, nrp = 0, nrt = 0;
    double panta[100007];

    f>>N;
    for(int i = 0; i < N; i++)
        f>>points[i].x>>points[i].y;

    for(int i = 0; i < N-1; i++)
        for(int j = i+1; j < N; j++)
            if(points[i].x != -1 * points[j].x)
                panta[nrp ++] = (double)(points[j].y - points[i].y) / (points[j].x - points[i].x);

    sort(panta,panta+nrp);


    for(int i = 0; i < nrp - 1; i++)
        if(panta[i] == panta[i+1])
            nr++;
        else
        {
            nrt += (nr*(nr-1))/2;
            nr=1;
        }

    g<<nrt;

    f.close();
    g.close();
    return 0;











}