Cod sursa(job #1073193)

Utilizator classiusCobuz Andrei classius Data 5 ianuarie 2014 19:36:20
Problema Aria Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 1.53 kb
using namespace std;

#include<iomanip>
#include<cmath>
#include<algorithm>
#include<vector>
#include<set>
#include<string>
#include<map>
#include<queue>
#include<stack>
#include<utility>
#include<cstdio>
#include<cstdlib>
#include<cassert>
#include<numeric>
#include<cstring>
#include<sstream>
#include<algorithm>
#include<deque>

#define FILES

#ifdef FILES
#include<fstream>
ifstream cin("aria.in");
ofstream cout("aria.out");
#else
#include<iostream>
#endif

#define max3(a,b,c) max(a,max(b,c))
#define min3(a,b,c) min(a,min(b,c))
#define ALL(a) a.begin(),a.end()
#define p_b(a) push_back(a)
#define m_p(a,b) make_pair(a,b)
#define p_p(a,b) p_b(m_p(a,b))

typedef unsigned char uchar;
typedef unsigned int uint;
typedef long long ll;
typedef unsigned long long ull;
typedef vector<int> vint;
typedef queue<int> qint;
typedef pair<int,int> pii;
typedef queue<pii> qpii;
typedef vector<pii> vpii;
typedef vector<string> vstr;
typedef vector<ll> vll;
typedef deque<int> dqint;
typedef deque<ll> dqll;
typedef map<string,int> mpstri;
typedef map<int,int> mpinti;
typedef map<string,string> mpstrs;
typedef map<string,vstr> mpstrvs;
const int INFI=(1LL<<31)-1;
const ll INFL=(1LL<<62);
const double eps=1e-7;
const long double pi=acos(-1.0);
const int MAXN=1000001;

double x[MAXN],y[MAXN];

int main(){
    int n;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>x[i]>>y[i];
    }

    double sl=0;

    for(int i=1;i<n;i++){
        sl+=(1/2.0)*(x[i]*y[i+1]-x[i+1]*y[i]);
    }
    sl+=(1/2.0)*(x[n]*y[1]-x[1]*y[n]);

    cout<<sl;

    return 0;
}