喷漆机器人问题

Time Limit: 1000 ms Memory Limit: 65536 KiB

Problem Description

F大学开发出一种喷漆机器人Rob,能用指定颜色给一块矩形材料喷漆。Rob每次拿起一种颜色的喷枪,为指定颜色的小矩形区域喷漆。喷漆工艺要求,一个小矩形区域只能在所有紧靠它上方的矩形区域都喷过漆后,才能开始喷漆,且小矩形区域开始喷漆后必须一次性喷完,不能只喷一部分。为Rob编写一个自动喷漆程序,使Rob拿起喷枪的次数最少。

对于给定的矩形区域和指定的颜色,计算Rob拿起喷枪的最少次数。

Input

输入数据的第一行有1 个正整数n,1≤n≤16,表示小矩形的个数。大矩形坐标系如图所示,左上角点的坐标为(0,0)。颜色编号为正整数。接下来的n行,每行用5 个整数y1,x1,y2,x2,c来表示一个矩形。(x1,y1)和(x2,y2)分别表示小矩形的左上角点坐标和右下角点坐标,c表示小矩形的颜色。

Output

将计算出的Rob拿起喷枪的最少次数输出。

Sample Input

7
0 0 2 2 1
0 2 1 6 2
2 0 4 2 1
1 2 4 3 2
1 3 3 6 1
4 0 6 3 1
3 3 6 6 2

Sample Output

3

Hint

 

Source