Rectangle Area
Find the total area covered by two rectilinear rectangles in a 2D plane.
Each rectangle is defined by its bottom left corner and top right corner as shown in the figure.

Assume that the total area is never beyond the maximum possible value of int.
题意:求两个长方形覆盖的面积。
class Solution {
public:
int computeArea(int A, int B, int C, int D, int E, int F, int G, int H) {
int totalArea = (C - A) * (D - B) + (G - E) * (H - F);
int x1, y1;
int x2, y2;
x2 = min(C, G);
y2 = min(D, H);
x1 = max(A, E);
y1 = max(B, F);
if(x1 >= x2 || y1 >= y2) return totalArea;
return totalArea - (x1 - x2) * (y1 - y2);
}
};
本文介绍了一种计算两个矩形在二维平面上所覆盖总面积的方法。通过定义每个矩形的底左角和顶右角,算法能够准确计算出两个矩形重叠部分并最终得出总面积。
398

被折叠的 条评论
为什么被折叠?



