| 1 | #include "lines.cpp" |
| 2 | typedef vector<point> polygon; |
| 3 | double polygon_area_signed(polygon p) { |
| 4 | double area = 0; int cnt = size(p); |
| 5 | rep(i,1,cnt-1) area += cross(p[i] - p[0], p[i + 1] - p[0]); |
| 6 | return area / 2; } |
| 7 | double polygon_area(polygon p) { |
| 8 | return abs(polygon_area_signed(p)); } |
| 9 | #define CHK(f,a,b,c) \ |