Cod sursa(job #1714414)

Utilizator GeanaVladGeana Vlad GeanaVlad Data 8 iunie 2016 09:32:59
Problema Trapez Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <iostream>
#include<fstream>
#include<vector>
#include<map>
using namespace std;
ifstream f("trapez.in");
ofstream g("trapez.out");
int n,i,x[1001],y[1001],j,cnt;
map<float,int>vf;
vector<float>p;
float panta(int i,int j)
{
    if(x[j]-x[i])
    return (y[j]-y[i])/(x[j]-x[i]);
    else
    {
        if(y[j]-y[i]) return -10000;
        else return -11000;
    }
}
int main()
{
   f>>n;
   for(i=1;i<=n;i++) f>>x[i]>>y[i];
   for(i=1;i<n;i++)
   for(j=i+1;j<=n;j++)
   {
       p.push_back(panta(i,j));
   }
   int l=n*(n-1)/2;
   for(i=0;i<l-1;i++)
   for(j=i+1;j<l;j++)
   {
       if(p[i]==p[j] && !vf[p[i]])
       {cnt++;
       vf[p[i]]=1;}
   }
   g<<cnt;
}