Cod sursa(job #2064993)

Utilizator GeorgeCalinPetruta George-Calin GeorgeCalin Data 13 noiembrie 2017 10:25:08
Problema Aria Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <fstream>
#include <algorithm>
#include <iomanip>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");

struct duet{
    long double x,y;
}v[100002];

long double determinant(duet a,duet b,duet c)
{
    return a.x*b.y+b.x*c.y+a.y*c.x-b.y*c.x-b.x*a.y-c.y*a.x;
}

int main()
{
    int n;
    fin>>n;
    for(int i=1;i<=n;i++)
    {
        fin>>v[i].x>>v[i].y;
    }
    long double aria=0;
    for(int i=2;i<n;i++)
    {
        long double det=determinant(v[1],v[i],v[i+1]);
        if(det<0)
            det*=-1;
        aria+=det;
    }
    fout<<setprecision(5)<<fixed;
    fout<<aria/2;
    return 0;
}