Cod sursa(job #2477262)

Utilizator greelioGreenio Greely greelio Data 19 octombrie 2019 21:47:15
Problema Aria Scor 70
Compilator c-64 Status done
Runda Arhiva educationala Marime 0.61 kb
#include<stdio.h>
#define N 100030

int n, rs;

struct pdd {
    double x, y;
} a[N];

double det(struct pdd A, struct pdd B, struct pdd C) {
    return (A.x*B.x + B.x*C.y + C.x * A.y - B.y*C.x - C.y*A.x - A.y*B.x);
}

double area;

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

    scanf("%d", &n);
    for (int i=1; i<=n; i++) {
        scanf("%lf%lf", &a[i].x, &a[i].y);
    }

    a[n+1]=a[1];
    struct pdd c; c.x=0, c.y=0;
    for (int i=1; i<=n+1; i++) {
        area += 0.5*det(c, a[i], a[i+1]);
    }

    printf("%f", area);

    return 0;
}