Pagini recente » Concursul de Programare organizat de UTCN (ediția 2023) | Cod sursa (job #1979035) | Cod sursa (job #1136979) | Cod sursa (job #3282597) | Cod sursa (job #1947415)
#include <iostream>
#include <fstream>
#include <vector>
#include <cmath>
#include <iomanip>
using namespace std;
struct Point
{
double x,y;
};
double Area(Point hull[100001], int N)
{
double area=0. ;
int i;
for(int i=0;i<N-1;i++)
area+=hull[i].x*hull[i+1].y-hull[i+1].x*hull[i].y;
area+=hull[N-1].x*hull[0].y-hull[0].x*hull[N-1].y;
return area*.5;
}
int main()
{
ifstream f("aria.in");
ofstream g("aria.out");
int n;
f>>n;
Point hull[100001];
for(int i=0;i<n;i++)
f>>hull[i].x>>hull[i].y;
long double area=Area(hull,n);
g<<fixed<<setprecision(5)<<max(area,-area);
return 0;
}