class Solution { public: int computeArea(int A, int B, int C, int D, int E, int F, int G, int H) { return (C - A) * (D - B) + (G - E) * (H - F) - overlap(A, C, E, G) * overlap(B, D, F, H); } private: int overlap(int A, int B, int C, int D) { if(B <= C || A >= D)return 0; return min(B, D) - max(A, C); } };