Leetcode 223. 矩形面积
在二维平面上计算出两个由直线构成的矩形重叠后形成的总面积。
每个矩形由其左下顶点和右上顶点坐标表示,如图所示。
示例:
输入: -3, 0, 3, 4, 0, -1, 9, 2
输出: 45
说明: 假设矩形面积不会超出 int 的范围。
这里和Leetcode 836. 矩形重叠是同一类型的题,
在上一次已经提交了IOu的概念,这里直接贴上代码,注意点事,没有交集的时候,面积事特例
def computeArea(A, B, C, D, E, F, G, H):
left_max = max(A, E)
right_min = min(C, G)
up_min = min(D, H)
down_max = max(B, F)
if left_max <= right_min and up_min >= down_max:
h = right_min - left_max
w = up_min - down_max
centor = w * h
return (D - B) * (C - A) + (G - E) * (H - F) - centor
else:
return (D - B) * (C - A) + (G - E) * (H - F)
参考链接
Leetcode 836. 矩形重叠:https://www.cnblogs.com/TuringEmmy/p/12519036.html
Leetcode 836. 矩形重叠https://blog.csdn.net/sinat_26745777/article/details/104953543
代码:https://github.com/TuringEmmy/LeetCode-Algorithm-/blob/master/Day-Day-Up/矩形面积.py
posted on 2020-03-18 21:54 TuringEmmy 阅读(160) 评论(0) 编辑 收藏 举报