Cod sursa(job #1997652)

Utilizator savigunFeleaga Dragos-George savigun Data 4 iulie 2017 23:35:03
Problema Aria Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include <iostream>
#include <fstream>
#include <iomanip>
#include <math.h>
using namespace std;

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

struct Point {
    double x, y;
};

int n;
double s;
Point v[100005];

double get_signed_area(Point a, Point b) {
    return a.x * b.y - b.x * a.y;
}

int main()
{
    in >> n;
    for (int i = 1; i <= n; ++i) {
        double x, y;
        in >> x >> y;
        v[i] = {x, y};
    }

    v[n + 1] = v[1];

    for (int i = 1; i <= n; ++i) {
        s += get_signed_area(v[i], v[i + 1]);
    }

    double arie = s / 2;
    out << setprecision(5) << fabs(arie);

    return 0;
}