Pagini recente » Cod sursa (job #1901579) | Cod sursa (job #1846135) | Cod sursa (job #800785) | Cod sursa (job #2707303) | Cod sursa (job #996384)
Cod sursa(job #996384)
#include<iostream>
#include<fstream>
#include<algorithm>
#define Nmax 1001
using namespace std;
int main()
{
ifstream f("trapez.in");
ofstream g("trapez.out");
int N,nr=0,n=1,trapez=0,unu=0,doi=0;
double panta[1000000],x[Nmax],y[Nmax];
f>>N;
for(int i=0;i<N;i++)
{
f>>x[i];
f>>y[i];
}
for(int i=0;i<N;i++)
for(int j=i+1;j<N;j++)
if(x[i]-x[j]==0) unu++;
else if (y[i]-y[j]==0) doi++;
else panta[nr++]=(y[j]-y[i])/(x[j]-x[i]);
sort(panta,panta+nr);
for(int i=0;i<nr-1;i++)
if (panta[i]==panta[i+1]) n++;
else {trapez=trapez+n*(n-1)/2;
n=1;}
trapez=trapez+unu*(unu-1)/2;
trapez=trapez+doi*(doi-1)/2;
g<<trapez;
f.close();
g.close();
return 0;
}