Cod sursa(job #2122674)
Utilizator | Data | 5 februarie 2018 13:22:54 | |
---|---|---|---|
Problema | Aria | Scor | 70 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.56 kb |
#include <bits/stdc++.h>
#define NMAX 100001
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
struct point{
double x, y;
};
int n;
point A, B, S;
double aria;
double det(point B, point C) {
return (B.x * C.y - B.y * C.x);
}
int main()
{
fin >> n;
fin >> A.x >> A.y;
S = A;
for(int i = 2; i <= n; i++) {
fin >> B.x >> B.y;
aria += det(A, B);
A = B;
}
aria += det(A, S);
fout << fixed;
fout << setprecision(5) << aria / 2.0 << '\n';
return 0;
}