Cod sursa(job #981625)

Utilizator crisbodnarCristian Bodnar crisbodnar Data 7 august 2013 17:17:39
Problema Aria Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include <iostream>
#include <fstream>
#include <algorithm>

#define x first
#define y second

using namespace std;

ifstream fin("aria.in");
ofstream fout("aria.out");

const int N = 100005;

int n;
double arie;
typedef pair <double, double> punct;
punct p0, p1, p[N];

inline double Arie(punct p2, punct p3)
{
    return ((p2.x - p0.x) * (p3.y - p0.y) - (p3.x - p0.x) * (p2.y-p0.y)) / 2;
}

int main()
{
    fin>>n;

    double c1, c2;
    fin>>c1>>c2;
    p0 = punct(c1, c2);
    fin>>c1>>c2;
    p1 = punct(c1, c2);

    for(int i=3; i<=n; i++)
    {
        fin>>p[i].x>>p[i].y;
        arie += Arie(p1, p[i]);
        p1 = p[i];
    }
    if(arie < 0) arie *= -1;
    fout<<arie;
    return 0;
}