Pagini recente » Cod sursa (job #2070152) | Cod sursa (job #737043) | Cod sursa (job #1623330) | Cod sursa (job #2903656) | Cod sursa (job #2078031)
#include <fstream>
using namespace std;
ifstream cin("aria.in");
ofstream cout("aria.out");
#define ll long double
struct fint
{
ll x,y;
};
fint v[100005];
ll det(ll a11,ll a12,ll a13,ll a21,ll a22,ll a23,ll a31,ll a32,ll a33)
{
return a11*a22*a33+a12*a23*a31+a21*a32*a13-a13*a22*a31-a21*a12*a33-a23*a32*a11;
}
ll sol=0;
int n;
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
cin>>v[i].x>>v[i].y;
v[n+1].x=v[1].x;
v[n+1].y=v[1].y;
for(int i=1;i<=n;i++)
{
///e spre dreapta
if(v[i].x<v[i+1].x)
sol-=det(0,0,1,v[i].x,v[i].y,1,v[i+1].x,v[i+1].y,1);
else
sol+=det(0,0,1,v[i].x,v[i].y,1,v[i+1].x,v[i+1].y,1);
}
cout<<sol;
return 0;
}