Cod sursa(job #1095142)

Utilizator Dddarius95Darius-Florentin Neatu Dddarius95 Data 30 ianuarie 2014 14:48:39
Problema Aria Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
// Arie poligon oarecare - O(N)
#include <fstream>
#include <cmath>
#define Nmax 100099
using namespace std;
ifstream f("aria.in");
ofstream g("aria.out");

int N;
struct point{long double x,y;}P[Nmax];


long double Arie(point P[Nmax])
{

    long double aux=0.0;
    for (int i=1; i<=N; ++i) aux+=(P[i].x*P[i+1].y-P[i+1].x*P[i].y);
    aux*=0.5;
    return fabs(aux);
}

void ReadInput();
int main()
{
    ReadInput();
    g.precision(5);
    g<<fixed<<Arie(P)<<'\n';
    f.close();g.close();
    return 0;
}

void ReadInput()
{
    f>>N;
    for (int i=1; i<=N; ++i) f>>P[i].x>>P[i].y;
    P[N+1]=P[1];
}