#C09L05P03. C09.L05.线性DP.练习3.书架

C09.L05.线性DP.练习3.书架

题目描述

仓库里有一个 CC 列(column) RR 行(row)的放物品的架子。

为了能拿到任意格子里的物品,必须使用一个梯子。每次梯子只能靠在一列上,这时可以拿这列和它相邻的两列的物品,但只能拿你爬到的高度以下的所有格子中物品(包括爬到的高度)。

现在你知道今天将要拿的一些物品的位置(行、列),但为了减少危险,想尽可能少爬梯子,即爬梯子的总高度和最小。

编程求出完成今天任务后,所需爬梯子的最小可能的高度和。

输入格式

第一行有两个被空格分隔的整数 CCRR, 1C1001 \le C \le 100, 1R1001 \le R \le 100,分别表示列数和行数。

第二行只有一个整数 NN, 1N1001 \le N \le 100,需要拿的物品的数量。

接下面的 NN 行,每行有 2 个整数 AABB1AC1 \le A \le C, 1BR1 \le B \le R,表示你拿物品的位置。

输出格式

输出文件只一行,你拿到所有物品后的可能最少爬梯子的高度和。

样例

5 5
3
2 3
3 4
4 4
4
6 20
4
5 6
1 1
6 1
3 7
9
10 10
5
9 1
7 6
5 8
4 1
3 2
11