Pagini recente » Cod sursa (job #1953764) | Cod sursa (job #1736503) | Cod sursa (job #1967598) | Cod sursa (job #72368) | Cod sursa (job #326084)
Cod sursa(job #326084)
#include <cstdio>
#include <algorithm>
using namespace std;
#define file_in "trapez.in"
#define file_out "trapez.out"
#define Nmax 1010
struct panta
{
int x,y;
}
p[Nmax*Nmax];
int n,t,nr,maxim,a,b;
int x[Nmax];
int y[Nmax];
int cmp(panta a, panta b)
{
return (a.x<b.x);
}
int main()
{
int i,j;
freopen(file_in,"r",stdin);
scanf("%d", &n);
for (i=1;i<=n;++i)
scanf("%d %d", &x[i],&y[i]);
fclose(stdin);
freopen(file_out,"w",stdout);
nr=0;
for (i=1;i<n;++i)
for (j=i+1;j<=n;++j)
{
if (x[i]-x[j]==0) a++;
else
if (y[i]-y[j]==0) b++;
else
{
nr++;
p[nr].x=y[j]-y[i];
p[nr].y=x[j]-x[i];
}
}
sort(p+1,p+nr+1,cmp);
t=0;
maxim=0;
for (i=1;i<nr;++i)
{
if (p[i].x*p[i+1].y==p[i].y*p[i+1].x)
t++;
else
t=0;
if (t>maxim) maxim=t;
}
printf("%d", maxim*(maxim-1)/2+a*(a-1)/2+b*(b-1)/2);
fclose(stdout);
return 0;
}