Pagini recente » Cod sursa (job #1974925) | Cod sursa (job #16928) | Cod sursa (job #2625046) | Cod sursa (job #1431425) | Cod sursa (job #1379831)
#include <bits/stdc++.h>
using namespace std;
#define Point pair<double,double>
#define x first
#define y second
const int Nmax = 100000;
Point P[Nmax + 1];
int N;
double xG, yG;
double area(Point A, Point B, Point C)
{
return abs( (B.x - A.x) * (C.y - A.y) - (B.y - A.y) * (C.x - A.x) );
}
int main()
{
ifstream in("aria.in");
ofstream out("aria.out");
in >> N;
for ( int i = 0; i < N; ++i )
{
in >> P[i].x >> P[i].y;
xG += P[i].x;
yG += P[i].y;
}
P[N] = P[0];
xG /= 1.0 * N;
yG /= 1.0 * N;
double A = 0;
for ( int i = 0; i < N; ++i )
A += area({xG, yG}, P[i], P[i + 1]);
out << fixed << setprecision(10);
out << A / 2.0 << "\n";
return 0;
}