Cod sursa(job #2820711)

Utilizator iulianarsenoiuArsenoiu Iulian iulianarsenoiu Data 21 decembrie 2021 12:02:05
Problema Trapez Scor 100
Compilator cpp-64 Status done
Runda cex02 Marime 0.96 kb
#include <bits/stdc++.h>

using namespace std;

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

struct puncte
{
    int x,y;
};

puncte v[1005];

vector <double> vec;

int main()
{
    int n;
    f>>n;
    for(int i=1; i<=n; i++)
    {
        f>>v[i].x>>v[i].y;
    }
    for(int i=1; i<=n; i++)
    {
        for(int j=i+1; j<=n; j++)
        {
            double panta;
            if(v[i].y-v[j].y!=0)
            {
                panta=1.0000*(v[i].x-v[j].x)/(1.000000*(v[i].y-v[j].y));
            }
            else
            {
                panta=v[i].x-v[j].x;
            }
            vec.push_back(panta);
        }
    }
    sort(vec.begin(),vec.end());
    int l=1;
    int nr=0;
    for(int i=1; i<vec.size(); i++)
    {
        if(vec[i]==vec[i-1])
        {
            l++;
        }
        else
        {
            nr+=(l*(l-1))/2;
            l=1;
        }
    }
    g<<nr<<'\n';
    return 0;
}