Cod sursa(job #52492)

Utilizator nashnash mit nash Data 19 aprilie 2007 00:32:05
Problema Triang Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <iostream>
#include <fstream>
#include <math.h>

using namespace std;

#define ERR 0.003
double x[501],y[501],d1,d2,d3;
int i,j,k,n;
long nr;

int main() {
	ifstream fin("triang.in");
	ofstream fout("triang.out");

	fin>>n;
	for(i=1;i<=n;i++)
		fin>>x[i]>>y[i];
	fin.close();

	for(i=1;i<=n;i++)
		for(j=1;j<=n;j++)
			if(j!=i)
				for(k=1;k<=n;k++)
					if((k!=i)&&(k!=j)) {
						d1=(x[i]-x[j])*(x[i]-x[j])+(y[i]-y[j])*(y[i]-y[j]);
						d2=(x[i]-x[k])*(x[i]-x[k])+(y[i]-y[k])*(y[i]-y[k]);
						d3=(x[j]-x[k])*(x[j]-x[k])+(y[j]-y[k])*(y[j]-y[k]);
						if( (fabs(d1-d2)<=ERR) && (fabs(d1-d3)<=ERR) && (fabs(d2-d3)<=ERR) ) nr++;
					}
	fout<<nr/6;
	fout.close();
	return 0;
}