Cod sursa(job #3226060)
Utilizator | TeodorV TeodorV | Data | 19 aprilie 2024 20:42:21 |
---|---|---|---|
Problema | Aria | Scor | 10 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.58 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
double getArea(pair<double, double> a, pair<double, double> b)
{
return (a.first-b.first)*(a.second+b.second)/2;
}
int main()
{
int n;
fin>>n;
vector<pair<double, double >> v(n);
for(int i=0; i<n; i++)
{
fin>>v[i].first>>v[i].second;
}
double area=0;
for(int i=0; i<n-1; i++)
{
area+=getArea(v[i], v[i+1]);
}
area+=getArea(v[n-1], v[0]);
fout<<setprecision(5);
fout<<area;
return 0;
}