/*根据题意,两种情况:
1)两个矩形不相交,直接返回两个矩形的面积之和;
2)两个矩形相交,返回两个矩形面积之和与交集的面积差。*/
class Solution {
public:
int computeArea(int A, int B, int C, int D, int E, int F, int G, int H) {
int area0 = (C-A) * (D-B), area1 = (G-E)*(H-F);
if(E >= C || A >= G || B >= H || F >= D) return area0 + area1;
int x0 = max(A, E), x1 = min(C, G);
int y0 = max(B, F), y1 = min(D, H);
int delta = (x1-x0) * (y1-y0);
return area0 + area1 - delta;
}
};
LeetCode之Rectangle Area
最新推荐文章于 2019-12-17 20:06:59 发布