Cod sursa(job #2188769)

Utilizator remus88Neatu Remus Mihai remus88 Data 27 martie 2018 14:12:23
Problema Aria Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.76 kb
#include <fstream>
#include <iomanip>
#include <cmath>
#define Nmax 100009

using namespace std;
ifstream f("aria.in");
ofstream g("aria.out");

typedef pair<double,double> point;
#define x first
#define y second

int n;
point v[Nmax];

void ReadInput() {

    f>>n;
    for (int i=1; i<=n; ++i) {

        f>>v[i].x>>v[i].y;
    }
}

double arie(point v[Nmax]) {

    double sum=0;

    for (int i=1; i<n; ++i) {

        sum += ( (v[i].x * v[i+1].y) - (v[i+1].x * v[i].y) );
    }

    sum += ( (v[n].x * v[1].y) - (v[1].x * v[n].y) );

    sum=sum * 0.5;

    return fabs(sum);
}

void Solve() {

    g<<setprecision(5)<<fixed<<arie(v);
}

int main() {

    ReadInput();
    Solve();
    f.close(); g.close();
    return 0;
}