Cod sursa(job #986961)
Utilizator | Data | 19 august 2013 21:13:00 | |
---|---|---|---|
Problema | Aria | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.52 kb |
#include<iostream>
#include<fstream>
#include<iomanip>
using namespace std;
ifstream f("aria.in");
ofstream g("aria.out");
#define MaxN 100100
int N;
double Sol;
double X[MaxN],Y[MaxN];
void citire(void)
{
f >> N;
for(int i=1;i<=N;i++)
f >> X[i] >> Y[i];
}
void Rezolvare(void)
{
X[N+1] = X[1];
Y[N+1] = Y[1];
for(int i=1;i<=N;i++)
Sol += 0.5 * (X[i]*Y[i+1] - Y[i]*X[i+1]);
}
int main()
{
citire();
Rezolvare();
g << std::setprecision(6) << (Sol < 0 ? -1.0 * Sol : Sol);
}