Cod sursa(job #2803259)

Utilizator diac_paulPaul Diac diac_paul Data 19 noiembrie 2021 18:42:02
Problema Aria Scor 70
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
#include <stdio.h>
using namespace std;
struct point {
    double x, y;
};
point points[100005];
 
double arie(point a, point b, point c) {
    return (double)(a.x * b.y + b.x * c.y + a.y * c.x - a.x * c.y - a.y *b.x - c.x*b.y);
}
int main()
{
    freopen("aria.in", "r", stdin);
	freopen("aria.out", "w", stdout);

 
    int n;
    double aria = 0;
    scanf("%d", &n);
 
    for (int i = 0; i < n; i++) {
		scanf("%lf %lf", &points[i].x, &points[i].y);
    }
    points[n] = points[0];
    for (int i = 1; i < n; i++) {
        aria += arie(points[0], points[i], points[i + 1]);
    }
	printf("%.5lf\n", aria / 2);
	fclose(stdout);
	return 0;
}