Cod sursa(job #1802822)

Utilizator aaether14Dinescu Stefan Cristian aaether14 Data 10 noiembrie 2016 17:42:58
Problema Trapez Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <fstream>
#include <unordered_map>



struct punct{
    int x, y;
};

int main()
{
    std::ifstream fin("trapez.in");
    std::unordered_map<double, int> t;
    long long result = 0;
    punct pts[1000];
    int n;
    fin>>n;
    for(int i=0;i<n;i++){
        int a, b;
        fin>>a>>b;
        pts[i] = punct{a, b};
    }
    fin.close();



    for (int i = 0; i < n; ++i)
    {
        for (int j = i+1; j < n; ++j)
        {
            int dx,dy;
            dx = pts[i].x - pts[j].x;
            dy = pts[i].y - pts[j].y;


        int num = t[((double)dy) / ((double)dx)];
        result += num;
        t[((double)dy) / ((double)dx)] = num+1;

        }
    }
    std::ofstream fout("trapez.out");
    fout << result;
    fout.close();


    return 0;

}