Cod sursa(job #2421277)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 14 mai 2019 17:19:23
Problema Aria Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.75 kb
#include<cstdio>
#define M 1<<16
char r[M];
int e=M,n,i;
double x[100001],y[100001];
long double s;
inline char C()
{
    if(e==M)
        fread(r,1,M,stdin),e=0;
    return r[e++];
}
inline double D()
{
    char c=C(),s=43;
    double a=0;
    for(;c<48;c=C())
        s=c;
    for(;c>47;c=C())
        a=a*10+c-48;
    if(c==46)
    {
        double b=0,p=1;
        for(;(c=C())>47;p*=10)
            b=b*10+c-48;
        a+=b/p;
    }
    return s==45?-a:a;
}

int main()
{
    freopen("aria.in","r",stdin),freopen("aria.out","w",stdout);
    for(n=D(),i=0;i<n;i++)
        x[i]=D(),y[i]=D();
    x[n]=x[0],y[n]=y[0];
    for(i=0;i<n;i++)
        s+=(long double)x[i]*y[i+1]-(long double)x[i+1]*y[i];
    printf("%.5Lf",s/2);
}