Pagini recente » Diferente pentru problema/sortop intre reviziile 4 si 5 | Borderou de evaluare (job #1197051) | Autentificare | Cod sursa (job #2539398)
#include <fstream>
#include <iomanip>
#define X first
#define Y second
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
double sol;
int i,n;
pair<double,double> v[100010];
double arie(pair<double, double> a,pair<double, double> b,pair<double, double> c){
return (b.X-a.X)*(c.Y-a.Y)-(c.X-a.X)*(b.Y-a.Y);
}
int main(){
fin>>n;
for(i=1;i<=n;i++)
fin>>v[i].X>>v[i].Y;
v[0]=v[n];
for(i=0;i<n;i++)
sol+=arie(v[0],v[i],v[i+1]);
fout<<setprecision(6)<<fixed<<sol/2.0;
return 0;
}