#1404. 仓库的架子

仓库的架子

题目描述

仓库里有一个C\red C(column)R\red R(row)的放物品的架子。

为了能拿到任意格子里的物品,必须使用一个梯子。

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

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

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

输入格式

第一行有两个被空格分隔的整数C\red CR\red R1C1001R100\red {1≤C≤100,1≤R≤100},分别表示列数和行数;

第二行只有一个整数n\red n1n100\red {1≤n≤100},表示需要拿的物品的数量;

接下来的n\red n行,每行有两个整数A\red AB\red B1AC1BR\red {1≤A≤C,1≤B≤R,}表示你拿物品的位置。

输出格式

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

样例

输入样例

5 5
3
2 3
3 4
4 4

输出样例

4