Cod sursa(job #2188766)

Utilizator remus88Neatu Remus Mihai remus88 Data 27 martie 2018 14:10:18
Problema Aria Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.88 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() {

    int sol= (int) arie(v);

//    int nrc=0;
//    while(sol>0) {
//        ++nrc;
//        sol=sol/10;
//    }

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

int main() {

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