Cod sursa(job #2333916)

Utilizator victorv88Veltan Victor victorv88 Data 2 februarie 2019 09:43:43
Problema Aria Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.74 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("aria.in");
ofstream g("aria.out");

int n, mini_x=-2000000, mini_y=-2000000;
double arie;

struct p{
    double x, y;
}puncte[100005], pct_maxim;

double calculcare_arie(p punct1, p punct2, p punct3)
{
    return punct1.x*punct2.y+punct2.x*punct3.y+punct3.x*punct1.y-punct3.x*punct2.y-punct2.x*punct1.y*-punct1.x*punct3.y;
}

int main() {
    f >> n;
    for (int i=1; i<=n; i++)
    {
        f >> puncte[i].x >> puncte[i].y;
    }
    puncte[n+1]=puncte[1];
    pct_maxim.x=-2000000;
    pct_maxim.y=-2000000;
    for (int i=1; i<=n; i++)
    {
        arie+=calculcare_arie(puncte[i],puncte[i+1],pct_maxim);
    }
    if (arie<0)
        arie=-arie;
    g << arie;
    return 0;
}