Cod sursa(job #1523415)

Utilizator razvanxdVancea Cosmin Razvan razvanxd Data 12 noiembrie 2015 18:43:35
Problema Aria Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.83 kb
#include <fstream>
#include <cmath>
#include <iomanip>

using namespace std;

ifstream fin("aria.in");
ofstream fout("aria.out");

struct punct{long x; long y;};

punct v[100];
float a, b, c, p, s;
long n, i;

int main()
{
    fin >> n;
    for(i = 1; i <= n; i++)
    {
        fin >> v[i].x >> v[i].y;
    }
    for(i = 2; i <= n-1; i++)
    {
        a = (float)sqrt((v[1].x - v[i].x)*(v[1].x - v[i].x) + (v[1].y - v[i].y)*(v[1].y - v[i].y));
        b = (float)sqrt((v[i].x - v[i+1].x)*(v[i].x - v[i+1].x) + (v[i].y - v[i+1].y)*(v[i].y - v[i+1].y));
        c = (float)sqrt((v[i+1].x - v[1].x)*(v[i+1].x - v[1].x) + (v[i+1].y - v[1].y)*(v[i+1].y - v[1].y));

        p = (a+b+c)/2;

        s += (float)sqrt(p*(p-a)*(p-b)*(p-c));
    }
    fout << fixed;
    fout << setprecision(5) << s << endl;

    return 0;
}