一、问题描述
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.
二、问题分析
计算整个区域的面积,显然等于两个矩形的面积和-重合区域(当然也可能没有重合的区域)。
三、Java AC代码
public int computeArea(int A, int B, int C, int D, int E, int F, int G, int H) {
int res = (D - B) * (C - A) + (G - E) * (H - F);
int A1 = Math.max(A, E), B1 = Math.max(B, F), C1 = Math.min(C, G), D1 = Math
.min(D, H);
if (A1 >= C1 || B1 >= D1) {
return res;
} else {
return res - (C1 - A1) * (D1 - B1);
}
}