Pagini recente » Statistici Anghelina Vozian (vozian.anghelina) | Cod sursa (job #1440150) | Fotbal2 | Cod sursa (job #334200) | Cod sursa (job #610544)
Cod sursa(job #610544)
#include<cstdio>
#include<cmath>
#include<algorithm>
using namespace std;
#define eps 0.00000000000001
#define inf 10000000
struct POINT { int x,y; };
POINT p[1010];
double panta ( POINT P1, POINT P2)
{
if(P1.x==P2.x)
return inf;
return (double)(P2.y-P1.y)/(P2.x-P1.x);
}
int main()
{
freopen("trapez.in","r",stdin);
freopen("trapez.out","w",stdout);
int nm,i,j,n,t1,rez,num,t2;
double pante[1000010];
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d%d",&t1,&t2);
p[i].x=t1;
p[i].y=t2;
}
num=0;
for(i=1;i<=n;i++)
for(j=i+1;j<=n;j++)
pante[++num]=panta(p[i],p[j]);
sort(pante+1, pante+num+1);
nm=rez=0;
for(i=1;i<num;i++)
if(pante[i+1]-pante[i]<eps)
nm++;
else
{
rez=rez+nm*(nm+1)/2;
nm=0;
}
printf("%d\n",rez);
return 0;
}