Cod sursa(job #909882)

Utilizator avramavram andrei marius avram Data 10 martie 2013 17:46:07
Problema Aria Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 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[j].x*v[k].y + v[k].x*v[i].y-
		v[k].x * v[j].y - v[j].x*v[i].y - v[i].x*v[k].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;
}