Cod sursa(job #1329430)

Utilizator AeroHHorea Stefan AeroH Data 29 ianuarie 2015 14:54:33
Problema Trapez Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <fstream>
#include <algorithm>
#include <vector>
#define x first
#define y second
using namespace std;

int n,i,j,x,y,gc,rasp;


ifstream f("trapez.in");
ofstream g("trapez.out");
pair<int,int> v[1001];
vector<double> w;
int main()
{
    f>>n;
    for(i=1;i<=n;++i)
        {
            f>>v[i].x>>v[i].y;
        }
    for (i=1;i<=n;++i)
        for(j=i+1;j<=n;++j)
            {
                x=v[i].x-v[j].x;
                y=v[i].y-v[j].y;
                if (y==0)
                    w.push_back(1337);
                else w.push_back((double)x/y);
            }
    sort(w.begin(),w.end());
    for (int i=0;i<w.size();++i)
        {
            int st=i-1;
            while(w[i] == w[i-1] && i<w.size())++i;
            rasp+=(i-st)*(i-st-1)/2;
        }
    g<<rasp;


    return 0;
}