Cod sursa(job #1483085)
Utilizator | Data | 8 septembrie 2015 17:52:43 | |
---|---|---|---|
Problema | Aria | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.54 kb |
#include <fstream>
#include <iomanip>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
struct Point
{
double x,y;
};
const int NMax = 100005;
int N;
Point P[NMax];
int main()
{
double S = 0;
fin>>N;
for(int i = 1; i <= N; ++i)
{
fin>>P[i].x>>P[i].y;
}
P[N+1] = P[1];
for(int i = 1; i <= N; ++i)
{
S += P[i].x*P[i+1].y - P[i+1].x*P[i].y;
}
fout <<fixed <<setprecision(6) << S / 2 <<"\n";
return 0;
}