> For the complete documentation index, see [llms.txt](https://protegejj.gitbook.io/algorithm-practice/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://protegejj.gitbook.io/algorithm-practice/leetcode/math/223-rectangle-area.md).

# 223 Rectangle Area

## 223. Rectangle Area

## 1. Question

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.

![Rectangle Area](https://leetcode.com/static/images/problemset/rectangle_area.png)

Assume that the total area is never beyond the maximum possible value of **int**.

## 2. Implementation

```java
class Solution {
    public int computeArea(int A, int B, int C, int D, int E, int F, int G, int H) {
        int sum = (C - A) * (D - B) + (G - E) * (H - F);
        int intersectionHeight = Math.min(D, H) >  Math.max(B, F) ? Math.min(D, H) - Math.max(B, F) : 0;
        int intersectionWidth = Math.min(C, G) > Math.max(A, E) ? Math.min(C, G) - Math.max(A, E) : 0;
        return sum - intersectionHeight * intersectionWidth;
    }
}
```

## 3. Time & Space Complexity

时间复杂度: O(1), 空间复杂度: O(1)
