Cod sursa(job #723342)

Utilizator lucian666Vasilut Lucian lucian666 Data 25 martie 2012 13:01:05
Problema Trapez Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb

#include<fstream>
#include<algorithm>
#define NN 
using namespace std;
ofstream out("trapez.out");
struct punct
{
	int x,y;
};
punct v[1001];
int n,m;
double v1[1000005];
void citire();
void solve();
int main()
{
	citire();
	solve();
	return 0;
}
void citire()
{
	ifstream in("trapez.in");
	in>>n;
	for(int i=1;i<=n;i++)
		in>>v[i].x>>v[i].y;
}
void solve()
{
	double panta;
	int i,j,rez1=0;
	for(i=1;i<n;i++)
		for(j=i+1;j<=n;j++)
			if(v[i].x==0&&v[j].x==0)
			{
				v1[++m]=0;
				rez1++;
			}
			else
			{
				panta=(double(v[j].y-v[i].y)/(double(v[j].x-v[i].x)));
				v1[++m]=panta;
			}
			sort(v1+1,v1+m+1);
			int rez=0;
			for(i=1;i<m;i++)
			if(v1[i]==v1[i+1])
				++rez;
			int z=rez-rez1;
			
				out<<(z*(z+1))/2<<'\n';
}