Cod sursa(job #1871254)

Utilizator andreigasparoviciAndrei Gasparovici andreigasparovici Data 7 februarie 2017 11:12:24
Problema Aria Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.8 kb
#include <iostream>
#include <cstdio>
#include <iomanip>
using namespace std;

#define NMAX 100001

int n;

struct point{
    long double x,y;
};

long double area(point a, point b)
{
    return a.x*b.y - a.y*b.x;
}

long double total_area;

void read()
{
    scanf("%d ",&n);
    point first,ultim,p;
    cin>>first.x>>first.y;

    ultim = first;

    for(int i=1;i<n;i++)
    {
        cin>>p.x>>p.y;
        total_area += area(ultim,p);
        ultim = p;
    }
    total_area += area(ultim,first);
    total_area /= 2;
}

int main()
{
    freopen("aria.in","r",stdin);
    freopen("aria.out","w",stdout);

    ios::sync_with_stdio();

    read();

    cout<<setiosflags(ios::fixed)<<setprecision(6)<<(total_area >=0 ? total_area : -total_area);

    return 0;
}