Cod sursa(job #1360859)

Utilizator DorelBarbuBarbu Dorel DorelBarbu Data 25 februarie 2015 18:25:40
Problema Aria Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.89 kb
#include <iostream>
#include <cstdio>
using namespace std;

struct punct
{
    int x;
    int y;
};

const int MAXN = 100000;

int N, A, B, I;
punct p[MAXN+1];

void citire()
{
    scanf("%d",&N);
    for(int i = 1; i <= N; i++)
        scanf("%d %d",&p[ i ].x,&p[ i ].y);

    p[ N + 1 ] = p[ 1 ];
}

int modul(int x)
{
    if( x >= 0 )
        return x;
    return -x;
}



int computeArea()
{
    int area = 0;

    for(int i = 1; i <= N; i++)
    {
        area += ( p[ i ].x*p[ i + 1 ].y - p[ i + 1 ].x*p[ i ].y );
        //cout<<countPoints( p[ i ], p[ i + 1 ] )<<endl;
    }

    return area/2;
}

int main()
{
    freopen("aria.in","r",stdin);
    freopen("aria.out","w",stdout);

    citire();
    //testCountPoints();
    int A = modul( computeArea() );
    //cout<<cmmdc(3,1);
    //cout<<A<<endl;
    printf("%d",A);
    return 0;
}