Cod sursa(job #914126)
#include <cstdio>
using namespace std;
int n;
struct punct
{
double x;
double y;
}a[100002];
double determinant(punct a,punct b,punct c)
{
return a.x*b.y+a.y*c.x+b.x*c.y-b.y*c.x-a.y*b.x-a.x*c.y;
}
double rezultat()
{
double rez=0;
punct X={0,0};
a[n]=a[0];
for(int i=1;i<=n;i++)
rez+=determinant(a[i-1],a[i],X)/2;
return rez;
}
int main()
{
freopen("aria.in","r",stdin);
freopen("aria.out","w",stdout);
scanf("%d",&n);
for(int i=0;i<n;i++)
scanf("%lf %lf",&a[i].x,&a[i].y);
printf("%lf\n",rezultat());
return 0;
}