两矩形覆盖总面积问题:题目解析与解法详解
📋 题目描述
给定二维平面上两个由直线构成的矩形,每个矩形的边平行于坐标轴。
每个矩形由其左下角顶点和右上角顶点坐标表示:
- 第一个矩形的左下角
(ax1, ay1)
,右上角(ax2, ay2)
; - 第二个矩形的左下角
(bx1, by1)
,右上角(bx2, by2)
。
任务:
请你计算并返回这两个矩形覆盖的总面积。
🧠 解题分析
从题目来看,矩形边界平行于坐标轴,矩形的面积可以简单用坐标差相乘得到。但两个矩形可能有重叠,直接相加面积会把重叠部分算两次,所以需要减去重叠面积。
因此,解题的关键是:
- 分别计算两个矩形的面积;
- 计算两个矩形重叠部分的面积;
- 总面积 = 两矩形面积之和 - 重叠面积。
注意:如果两个矩形没有重叠,重叠面积应该是 0
,而不是负数。