Cod sursa(job #516827)

Utilizator Oancea.CatalinOancea Catalin Oancea.Catalin Data 26 decembrie 2010 17:39:46
Problema Trapez Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.92 kb
#include<fstream>
using namespace std;
fstream f, g;
double  panta[1000], panta1;
long long n, i, j, k=0, a[1000], maxim, secvm, nri;
void sortare( double a[100000], long long n)
{
	int ok, i, aux;
	do
	{
		ok=1;
		for(i=1; i<=n; i++)
		{
			if(a[i]>a[i+1])
			{
				aux=a[i];
				a[i]=a[i+1];
				a[i+1]=aux;
				ok=0;
			}
		}
	}while(ok==0);
}	
int main()
{
	f.open("trapez.in", ios::in),
	g.open("trapez.out", ios::out);
	f>>n;
	for(i=1; i<=2*n; i++)
		f>>a[i];
	
	for(i=1; i<=2*n-2; i+=2)
	{
		for(j=i; j<=2*n-3; j+=4)
		{
			if(a[j+2]-a[j]!=0)
				panta1=(a[j+3]-a[j+1])/(a[j+2]-a[j]);
			else
				panta1=-0.547896;
			k++;
			panta[k]=panta1;
		}
	}
	sortare(panta, k);
	maxim=0;
	secvm=0;
	for(i=1; i<=k-1; i++)
	{
		if(panta[i]==panta[i+1])
			secvm++;
		else
			if(secvm>maxim)
			{
				maxim=secvm+1;
				nri=nri+((secvm+1)*secvm/2);
				secvm=1;
			}
	}
	g<<nri;
}