Cod sursa(job #914115)

Utilizator traista.lamaitaTraista traista.lamaita Data 13 martie 2013 21:41:16
Problema Trapez Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include<fstream>
#define NMAX 1005
using namespace std;
ifstream f("trapez.in");
ofstream g("trapez.out");
struct  pct {int x,y;} d[NMAX];
double p[NMAX*NMAX],aux;
int i,n,j,k,sol,nr;

int main ()  
{f>>n;
 for(i=1;i<=n;++i)
    f>>d[i].x>>d[i].y;
 for(i=1;i<n;++i) 
	for(j=i+1;j<=n;++j)
            p[++nr]=(double)((d[j].x-d[i].x)/(d[j].y-d[i].y));
    for(i=1; i<=nr-1; ++i)
		for(j=i+1; j<nr; ++j)
			if(p[i]>p[j])
				{aux=p[i]; p[i]=p[j]; p[j]=aux;}
    for(i=1;i<=nr;++i) 
		{k=1;
		 while(i<nr && p[i+1]==p[i]) {++i; k++;}
		 sol+=k*(k-1)/2;
		}
    g<<sol<<"\n";
    return 0;
}