Cod sursa(job #2763684)

Utilizator Razvan48Capatina Razvan Nicolae Razvan48 Data 15 iulie 2021 23:50:53
Problema Aria Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.72 kb
#include <fstream>
#include <iomanip>

using namespace std;

const int NMAX = 100000;

pair<long double, long double> puncte[1 + NMAX + 1];

int main()
{
    ifstream in("aria.in");
    ofstream out("aria.out");

    int n;
    in >> n;

    for (int i = 1; i <= n; i++)
    {
        double x, y;
        in >> x >> y;

        puncte[i] = make_pair(x, y);
    }
    puncte[n + 1] = puncte[1];

    long double arie = 0.0;

    for (int i = 1; i <= n; i++)
    {
        arie += puncte[i].first * puncte[i + 1].second - puncte[i + 1].first * puncte[i].second;
    }

    if (arie < 0.0)
        arie = -arie;

    arie /= 2.0;

    out << fixed << setprecision(12) << arie << '\n';

    return 0;
}