Cod sursa(job #1281555)

Utilizator gbibBacotiu Gabi gbib Data 3 decembrie 2014 12:43:22
Problema Trapez Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream in("trapez.in");
ofstream out("trapez.out");
double p[500005];
struct poz{int x,y;}a[1005];
int main()
{int n,i,j,c=1,cont=0,s=1,inf=(1<<30);
in>>n;
for(i=1;i<=n;i++)
    in>>a[i].x>>a[i].y;
for(i=1;i<=n;i++)
{
    for(j=i+1;j<=n;j++)
    {
        if(!(a[j].x-a[i].x))
        p[c]=inf;
        else
        p[c]=(double)(a[j].y-a[i].y)/(a[j].x-a[i].x);
        c++;
    }
}

sort(p+1,p+c);

for(i=2;i<c;i++)
{
    if(p[i]-p[i-1]==0)
        s++;
    else
    {
        cont=cont+(s)*(s-1)/2;
        s=1;
    }

}
out<<cont<<'\n';
    return 0;
}