/* * 223. Rectangle Area * 12.12 by Mingyang * 大面积减去小面积 * 这里我们题意不要理解错了哦,这里是寻找所有被cover的地方,不是只有被两者重叠cover的地方 * 所以我们需要找到两个面积之和减去中间重复两次的小面积 */ public int computeArea(int A, int B, int C, int D, int E, int F, int G, int H) { int minu = 0; if (E >= C || G <= A || F >= D || H <= B) minu = 0; else minu = (Math.min(G, C) - Math.max(A, E)) * (Math.min(D, H) - Math.max(F, B)); return (C - A) * (D - B) + (G - E) * (H - F) - minu; }