Cod sursa(job #909895)

Utilizator avramavram andrei marius avram Data 10 martie 2013 17:51:06
Problema Aria Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>
#include <cstdio>

using namespace std;

struct punct {
	double x;
	double y;
};


punct v[100100];

int i, n;

double aria(int i, int j, int k) {
	double r;
	r = v[i].x*(v[j].y - v[k].y) + v[j].x*(v[k].y - v[i].y) + v[k].x*(v[i].y-v[j].y);
	if (r > 0)
		return r;
	else
		return -r;
}

int main() {
	ifstream fin("aria.in");
	FILE *fout = fopen("aria.out","w");
//	ofstream fout("aria.out");
	fin>>n;
	for (i=1;i<=n;i++) {
		fin>>v[i].x>>v[i].y;
	}
	double sum = 0;
	for (i=2;i<n;i++)
		sum += aria(1, i, i+1);
	
	fprintf(fout,"%.7lf",sum/2);
//	fout<<sum/2;
	
	return 0;
}