Cod sursa(job #1013487)
Utilizator | Data | 20 octombrie 2013 23:52:40 | |
---|---|---|---|
Problema | Aria | Scor | 70 |
Compilator | c | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include<stdio.h>
#define maxn 100005
FILE *fi,*fo;
int i,n;
double x[maxn],y[maxn];
double a=0;
int main(void){
fi=fopen("aria.in","r");
fo=fopen("aria.out","w");
fscanf(fi,"%d",&n);
for(i=1;i<=n;i++) fscanf(fi,"%lf%lf",&x[i],&y[i]);
x[n+1]=x[1]; y[n+1]=y[1];
for(i=1;i<=n;i++) a+=(1LL*x[i]*y[i+1])-(1LL*x[i+1]*y[i]);
if (a<0) a=-a;
a/=2;
fprintf(fo,"%lf",a);
fclose(fi); fclose(fo);
return 0;
}