Pagini recente » Cod sursa (job #1680286) | Cod sursa (job #253604) | Monitorul de evaluare | Cod sursa (job #226799) | Cod sursa (job #1126769)
#include <iostream>
#include <fstream>
#include <algorithm>
#include <vector>
#define xx first
#define yy second
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
const int NMAX = 1e5 + 100;
int N;
typedef pair <double, double> pct;
pct P[NMAX];
double Sign(pct A, pct B)
{
return A.xx * B.yy - A.yy * B.xx;
}
int main()
{
fin >> N;
for(int i = 1; i <= N; i++)
fin >> P[i].xx >> P[i].yy;
P[N + 1] = P[1];
double Arie = 0;
for(int i = 2; i <= N + 1; i++)
Arie += Sign(P[i - 1], P[i]);
fout.precision(5);
fout << fixed << (Arie / 2.0);
return 0;
}