Pagini recente » Cod sursa (job #2855425) | Cod sursa (job #2415498) | Cod sursa (job #1398254) | Cod sursa (job #197884) | Cod sursa (job #260945)
Cod sursa(job #260945)
#include<stdio.h>
#define nmax 10
int x[nmax],y[nmax];
struct panta
{
int n,p;
} m[nmax*(nmax-1)];
void sort(int st,int dr)
{
int poz=st-1;
for(int i=st;i<=dr;++i)
if (m[dr].p*m[i].n<=m[dr].n*m[i].p)
{
panta aux=m[i];
m[i]=m[++poz];
m[poz]=aux;
}
if (st<poz-1)
sort(st,poz-1);
if (poz+1<dr)
sort(poz+1,dr);
}
int main()
{
int n,k=0,cont=0;
freopen("trapez.in","r",stdin);
freopen("trapez.out","w",stdout);
scanf("%d",&n);
for(int i=1;i<=n;++i)
{
scanf("%d%d",&x[i],&y[i]);
for(int j=i-1;j;j--)
{
m[++k].n=y[i]-y[j];
m[k].p=x[i]-x[j];
}
}
int n2=((n-1)*n)/2;
sort(1,n2);
for(int i=1;i<=n2;++i)
for(int j=i+1;j<=n2 && m[i].n*m[j].p==m[i].p*m[j].n;++j , ++cont);
printf("%d\n",cont);
return 0;
}