Pagini recente » Cod sursa (job #2374305) | Cod sursa (job #1711560) | Cod sursa (job #1098904) | Cod sursa (job #266831) | Cod sursa (job #254534)
Cod sursa(job #254534)
#include <stdio.h>
#include <algorithm>
#define FOR(i,s,d) for(i=(s);i<=(d);++i)
using namespace std;
struct coord{long x;long y;};
coord v[10000];
long n,i,c,j,l,nrt;
double pn[1000],nrc=-1;
int main()
{
freopen ("trapez.in","r",stdin);
freopen ("trapez.out","w",stdout);
scanf("%ld",&n);
FOR (i,1,n)
scanf ("%ld %ld",&v[i].x,&v[i].y);
FOR (i,1,n-1)
FOR (j,i+1,n){
pn[++l]=(double(v[i].y-v[j].y)/(v[i].x-v[j].x));
if(pn[l]<0)pn[l]*=(-1);
}
sort(pn+1,pn+l+1);
FOR (i,1,l){
if(nrc!=pn[i]&&i!=1){nrc=pn[i];nrt+=(c*(c-1))/2;c=1;}
else c++;
}
printf("%ld",nrt);
return 0;
}