P1283 [ICPC 1999 Tehran R] Painting A Board

Description

The CE digital company has built an Automatic Painting Machine (APM) to paint a flat board fully covered by adjacent non-overlapping rectangles of different sizes each with a predefined color. ![](https://cdn.luogu.com.cn/upload/pic/90.png) To color the board, the APM has access to a set of brushes. Each brush has a distinct color $C$. The APM picks one brush with color $C$ and paints all possible rectangles having predefined color $C$ with the following restrictions: To avoid leaking the paints and mixing colors, a rectangle can only be painted if all rectangles immediately above it have already been painted. For example rectangle labeled $F$ in Figure $1$ is painted only after rectangles $C$ and $D$ are painted. Note that each rectangle must be painted at once, i.e. partial painting of one rectangle is not allowed. You are to write a program for APM to paint a given board so that the number of brush pick-ups is minimum. Notice that if one brush is picked up more than once, all pick-ups are counted.

Input Format

The first line contains an integer $N$, the number of rectangles, followed by $N$ lines describing the rectangles. Each rectangle $R$ is specified by $5$ integers in one line: the $y$ and $x$ coordinates of the upper left corner of $R$, the $y$ and $x$ coordinates of the lower right corner of $R$, followed by the color-code of $R$.

Output Format

One line for each test case showing the minimum number of brush pick-ups.

Explanation/Hint

Constraints: $1 \le C_i \le 20$, $0 \le x_i, y_i \le 99$, $1 \le N \le 16$.