NEERC 2006 / POJ 3148 ASCII Art (梯形剖分)
http://poj.org/problem?id=3148
https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&category=255&page=show_problem&problem=1703
考察每条线段,对多边形进行梯形剖分。
按顺时针方向看,如果一条有向线段是向着 -x 轴的,那么它的下方形成的面积为负;如果一条有向线段是向着 +x 轴的,那么它的下方形成的面积为正。我们可以据此累加面积。
对每个梯形细条,分成三部分讨论,如下图:(只考察右边 1*5 的区域)
对于 ①,我们可从上往下算,每次减去前面的三角形面积就为当前梯形的面积。
对于 ②,用梯形面积减去 ① 中最后算出的三角形面积。
对于 ③,面积为 1 或 -1,这取决于这条线段的朝向。