Cod sursa(job #2416070)

Utilizator baltoi.teodorTeodor Baltoi baltoi.teodor Data 26 aprilie 2019 21:00:24
Problema Aria Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.65 kb
#include <bits/stdc++.h>
#define NMAX 100001
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
struct cord{int x, y;}pct[NMAX];
typedef long double ld;
ld det(int x1, int y1, int x2, int y2, int x3, int y3)
{
    return ld(abs( (x1*y2+x2*y3+x3*y1-x3*y2-x2*y1-x1*y3) /2 )) ;
}
int main()
{
    int n;
    fin>>n;
    ld S=0;
    for(int i=1;i<=n;++i)
    {
        fin>>pct[i].x>>pct[i].y;
    }
    int x=0,y=0;
    for(int i=1;i<=n-1;++i)
        S+=det(x,y,pct[i].x,pct[i].y,pct[i+1].x,pct[i+1].y);
    S+=det(x,y,pct[n].x,pct[n].y,pct[1].x,pct[1].y);
    fout<<fixed<<setprecision(5)<<S<<endl;
    return 0;
}