Cod sursa(job #2177532)

Utilizator MihaelaCismaruMihaela Cismaru MihaelaCismaru Data 18 martie 2018 17:32:58
Problema Aria Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.7 kb
#include<fstream>
#include<iomanip>
using namespace std;
ifstream in ("aria.in");
ofstream out ("aria.out");
double aria,x1,x2,x3,y1,y2,y3;
int n;
double abs (double x) {
    if (x < 0) {
        return -x;
    }
    return x;
}
pair<double,double> v[100001];
int main (void) {
    in >> n;
    for (int i = 1; i <= n; i ++) {
        in >> v[i].first >> v[i].second;
    }
    x1 = 0;
    y1 = 0;
    v[n+1] = v[1];
    for (int i = 1; i <= n; i ++) {
        x2 = v[i].first;
        y2 = v[i].second;
        x3 = v[i+1].first;
        y3 = v[i+1].second;
        aria += ((x2-x1)*(y3-y1) - (x3-x1)*(y2-y1)) / 2;
    }
    out <<setprecision(5) << fixed << abs(aria);
    return 0;
}