223. 矩形面积
题目描述
给你 二维 平面上两个 由直线构成且边与坐标轴平行/垂直 的矩形,请你计算并返回两个矩形覆盖的总面积。
每个矩形由其 左下 顶点和 右上 顶点坐标表示:
- 第一个矩形由其左下顶点
(ax1, ay1)
和右上顶点(ax2, ay2)
定义。 - 第二个矩形由其左下顶点
(bx1, by1)
和右上顶点(bx2, by2)
定义。
示例 1:
1 2 |
|
示例 2:
1 2 |
|
提示:
- \(-10^4\) \(≤\) \(ax1\) , \(ay1\) , \(ax2\) , \(ay2\) , \(bx1\) , \(by1\) , \(bx2\) , \(by2\) \(≤\) \(10^4\)
思路
观察图像,不难发现以下特征:
- 矩形a的水平边在x轴上的投影为
[ax1, ax2]
,垂直边在y轴投影为[ay1, ay2]
; - 矩形b的水平边在x轴上的投影为
[bx1, bx2]
,垂直边在y轴投影为[by1, by2]
; - 若两矩阵重合,则重合矩形的水平边在x轴上的投影为
[max(ax1, bx1), min(ax2, bx2)]
, 垂直边在y轴上的投影为[max(ay1, by1), min(ay2, by2)]
。 - 若有重合矩形,答案即为
两矩形面积和 - 重合矩形面积
代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|