Cod sursa(job #971949)

Utilizator Anca_PaneaPanea Anca Anca_Panea Data 10 iulie 2013 16:26:05
Problema Trapez Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
using namespace std;
#include<fstream>
#include <algorithm>
#define infinit 100000000
#define NMAx 1011
ifstream eu("trapez.in");
ofstream tu("trapez.out");
using namespace std;
int N,nr,sol,k;
double m[NMAx*NMAx],X[NMAx],Y[NMAx];
int main()
{
	int i,j;
    eu>>N;
    for(int i=1;i<=N;i++)
        eu>>X[i]>>Y[i];
    for(i=1;i<N;i++)
        for(j=i+1;j<=N;j++)
			if(X[j]-X[i]==0)
				m[++k]=infinit;
			else
				m[++k]=(Y[j]-Y[i])/(X[j]-X[i]);
    sort(m+1,m+k+1);
   for(i=1;i<k;++i){
      if(m[i+1]==m[i]) nr++;
      else{
           sol=sol+nr*(nr+1)/2;
           nr=0;
           }
      }
		tu<<sol;
    return 0;
}