实现功能——输入N个点,求出按此顺序围成的图形的面积
原理:其实就是个向量的叉积运算(详见UASCO-nocow:计算几何),注意二维的叉积是个很逗的东西,叉积这玩意本身就来自于三维向量
(HansBug:临睡觉了,水一发呵呵哒,额。。。phile犇不在好寂寞TT)
1 var
2 i,j,k,l,m,n:longint;
3 a:array[0..100000,1..2] of longint;
4 function surface:extended;inline;
5 var
6 i,j:longint;
7 begin
8 j:=0;
9 for i:=1 to n do
10 j:=j+(a[i,1]*a[(i mod n)+1,2])-(a[(i mod n)+1,1]*a[i,2]);
11 exit(abs(j)/2);
12 end;
13 begin
14 readln(n);
15 for i:=1 to n do readln(a[i,1],a[i,2]);
16 writeln(surface:0:2);
17 readln;
18 end.
19