Cod sursa(job #2352690)

Utilizator VanaMarcVana Marc VanaMarc Data 23 februarie 2019 16:41:45
Problema Aria Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.7 kb
#include <iostream>
#include <fstream>
#include <iomanip>
#include <cmath>

using namespace std;

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

struct point {
    long long x, y;
};

point P[100001];
int n;
double AREA;

double triangle_area (point A, point B, point C)
{
    A.x -= C.x;
    B.x -= C.x;
    A.y -= C.y;
    B.y -= C.y;
    return fabs (double ((A.x * B.y - B.x * A.y) / 2));
}

int main()
{
    fi >> n;
    for (int i = 1; i <= n; ++ i)
        fi >> P[i].x >> P[i].y;
    for (int i = 2; i <= n - 1; ++ i)
        AREA += triangle_area (P[1], P[i], P[i + 1]);
    fo << fixed << setprecision (6) << AREA;
    fi.close ();
    fo.close ();
    return 0;
}