Mai intai trebuie sa te autentifici.

Cod sursa(job #516663)

Utilizator angelicheartMicu Ana angelicheart Data 25 decembrie 2010 15:21:14
Problema Trapez Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <fstream>
using namespace std;

struct panta {int x,y;} v[1<<20],a[1<<10];
int n,m;

ifstream in("trapez.in");
ofstream out("trapez.out");

inline bool cmp(panta a,panta b)
{
	return a.x*b.y<a.y*b.x;
}

inline bool egal(panta a,panta b)
{
	return a.x*b.y==a.y*b.x;
}

int main()
{
	int i,j,nr=0;
	in>>n;
	for (i=1;i<=n;i++)
		in>>a[i].x>>a[i].y;
	for (i=1;i<n;i++)
		for (j=i+1;j<=n;j++)
		{
			v[++m].x=a[i].y-a[j].y;
			v[m].y=a[i].x-a[j].x;
		}
	sort(v+1,v+m+i,cmp);
	for (i=2,n=1;i<=m;i++)
		if (egal(v[i],v[i-1]))
			n++;
		else
		{
			nr+=n*(n-1)/2;
			n=1;
		}
	out<<nr<<"\n";
	return 0;
}