Pagini recente » Cod sursa (job #585177) | Cod sursa (job #2411134) | Cod sursa (job #2163234) | Cod sursa (job #2539875) | Cod sursa (job #3039535)
#include <algorithm>
#include <iostream>
#include <fstream>
#include <vector>
#include <stack>
#include <iomanip>
using namespace std;
string filename = "aria";
#ifdef LOCAL
ifstream fin("input.in");
ofstream fout("output.out");
#else
ifstream fin(filename + ".in");
ofstream fout(filename + ".out");
#endif
const int NMAX = 1e5;
struct Point{
double x, y;
}v[NMAX + 1];
double area(Point a, Point b, Point c){
return a.x * (b.y - c.y) + b.x * (c.y - a.y) + c.x * (a.y - b.y);
}
signed main(){
int n;
fin >> n;
for(int i = 1; i <= n; i++){
fin >> v[i].x >> v[i].y;
}
double A = 0;
for(int i = 1; i + 1 <= n; i++){
A += area({0, 0}, v[i], v[i + 1]);
}
A += area({0, 0}, v[n], v[1]);
fout << fixed << setprecision(5);
fout << A / (2.0) << '\n';
return 0;
}