叉乘
HDU 2108 Shape of HDU 判断凸凹边形
HDU 2036 改革春风吹满地 计算任意多边形面积
1 // HDU 2036 2 #include<iostream> 3 #define MAX 10000 4 using namespace std; 5 6 int main() 7 { 8 int n, x[MAX], y[MAX]; 9 while(scanf("%d", &n) != EOF && n) 10 { 11 int i; 12 double area = 0; 13 for(i = 0; i < n; i++) 14 cin >> x[i] >> y[i]; 15 for(i = 0; i < n-1; i++) 16 area += (x[i] * y[i+1] - x[i+1] *y[i]); 17 area += (x[n-1] * y[0] - x[0] *y[n-1]); 18 area /= 2; 19 printf("%.1f\n", area); 20 } 21 }