Pagini recente » Cod sursa (job #2840257) | Cod sursa (job #3260708) | Cod sursa (job #3258474) | Cod sursa (job #2405874) | Cod sursa (job #444487)
Cod sursa(job #444487)
#include<stdio.h>
#include<algorithm>
using namespace std;
struct dat
{
int x;
int y;
};
dat a[102];
int cc[10002],d[10002];
double b[10002];
double panta (int i, int j)
{
double m;
float zx,zxx;
zxx= a[i].y - a[j].y;
zx= a[i].x - a[j].x;
m=(double)zxx/zx;
return m;
}
int main()
{
freopen("trapez.in","r",stdin);
freopen("trapez.out","w",stdout);
int i,j,q,n,p=1;
scanf("%d",& n);
for(i=1;i<=n;i++)
scanf("%d%d",&a[i].x,&a[i].y);
int z=0;
q=1;
for(i=1;i<=n;i++)
for(j=i+1;j<=n;j++)
{
if(a[i].x!=a[j].x)
{
if(a[i].y!=a[j].x)
{
b[q]=panta(i,j);
q++;
}
}
else
{
z++;
}
}
sort(b+1,b+q);
long nr;
float c;
int t;
c=b[1];
nr=0;
t=0;
for(i=1;i<=q;i++)
{
if(b[i]==c)
t++;
else
{
if(t!=1)
nr=nr+(t*(t-1)/2);
c=b[i];
t=1;
}
}
c=cc[1];
t=1;
for(i=1;i<=z;i++)
{
if(c!=cc[z])
{
c=cc[z];
t++;
}
}
nr=nr+(t*(t-1)/2);
c=d[1];
t=1;
for(i=1;i<=p;i++)
{
if(c!=d[z])
{
c=d[z];
nr++;
}
}
nr=nr+(t*(t-1)/2);
printf("%ld",nr);
return 0;
}