Cod sursa(job #1042366)

Utilizator sziliMandici Szilard szili Data 26 noiembrie 2013 22:31:32
Problema Aria Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.83 kb
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <vector>

using namespace std;

typedef struct point{
    double x;
    double y;
} POINT;

vector<POINT> points;

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

    int n;
    scanf("%d", &n);

    int x, y;
    for (int i=0; i<n; i++){
        scanf("%lf %lf", &x, &y);
        POINT p;
        p.x = x;
        p.y = y;

        points.push_back(p);
    }

    double area = 0.0;


    for (int i=0; i< (n-1); i++){
        POINT p1 = points[i];
        POINT p2 = points[i+1];

        area += (p1.x*p2.y - p2.x*p1.y);
    }

    POINT p1 = points[n-1];
    POINT p2 = points[0];
    area += (p1.x*p2.y - p2.x*p1.y);

    area = area / 2;


    printf("%0.5f", area);


    return 0;
}