LeetCode 223 矩形面积[数学] HERODING的LeetCode之路
Posted HERODING23
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 223 矩形面积[数学] HERODING的LeetCode之路相关的知识,希望对你有一定的参考价值。
解题思路:
其实总面积是便是area1和area2面积之和减去重叠部分,两个矩形面积很好计算,重叠部分需要利用位置关系进行计算,得到其长宽即可,代码如下:
class Solution {
public:
int computeArea(int ax1, int ay1, int ax2, int ay2, int bx1, int by1, int bx2, int by2) {
int area1 = (ax2 - ax1) * (ay2 - ay1);
int area2 = (bx2 - bx1) * (by2 - by1);
int width = min(ax2, bx2) - max(ax1, bx1);
int height = min(ay2, by2) - max(ay1, by1);
int overlap = max(width, 0) * max(height, 0);
return area1 - overlap + area2;
}
};
以上是关于LeetCode 223 矩形面积[数学] HERODING的LeetCode之路的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode 223 Rectangle Area(矩形面积)