321
社区成员




给出一个简单多边形(没有缺口),它的边要么是垂直的,要么是水平的。要求计算多边形的面积。 多边形被放置在一个 X-Y 的卡笛尔平面上,它所有的边都平行于两条坐标轴之一。然后按逆时针方向给出各顶点的坐标值。所有的坐标值都是整数(因此多边形的面积也为整数)。
额。。。。老顾把第一个用例拉出来看了看。。。嗯前几个坐标分别是 [0, 0], [3, 2], [6, 4], [9, 7],嗯???不是说边是垂直或水平的吗?这是啥情况。。。。
直到老顾看了问哥的题解,直接忽略了这些,按照公式进行计算。。。。好吧,读书少就只能抄别人的答案了。
n = int(input())
arr = [list(map(int,input().split())) for _ in range(n)]
arr.append(arr[0])
print(abs(sum([arr[i][0] * arr[i + 1][1] - arr[i][1] * arr[i + 1][0] for i in range(n)]))//2)