Cod sursa(job #921670)
| Utilizator | Data | 21 martie 2013 10:43:41 | |
|---|---|---|---|
| Problema | Aria | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.49 kb |
#include <fstream>
using namespace std;
ifstream in ("aria.in"); ofstream out ("aria.out");
double abs(double x)
{
if(x<0)return -x;
return x;
}
struct point
{
int x,y;
};
point pts[100003];
int n;
int main()
{
in >> n;
for( int i = 0; i < n; i++)
{
int x,y;
in >> x >> y;
pts[i]=(point){x,y};
}
pts[n]=pts[0];
double ar=0.1f;
for(int i = 0; i < n; i++)
{
ar+=(pts[i].x*pts[i+1].y-pts[i+1].x*pts[i].y)/2;
}
out << abs(ar);
}
