Cod sursa(job #3139830)
Utilizator | Panaete Adrian proflaurian | Data | 2 iulie 2023 08:37:01 |
---|---|---|---|
Problema | Aria | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.56 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream f("aria.in");
ofstream g("aria.out");
typedef long double LD;
typedef pair<LD,LD> point;
vector <point>v;
point readPoint()
{
LD x,y;
f>>x>>y;
return make_pair(x,y);
}
LD sum=0;
int n;
int main()
{
f>>n;
for(int i=1;i<=n;i++)
v.push_back(readPoint());
v.push_back(v[0]);
for(int i=0;i<n;i++)
sum+=v[i].first*v[i+1].second-v[i+1].first*v[i].second;
sum/=2;
if(sum<0)
sum=-sum;
g<<fixed<<setprecision(10)<<sum;
return 0;
}