编程题
### 问题描述
一个顶部有 $m\times n$ 个单位正方形网格的矩形蛋糕需要切成小块。几颗樱桃散落在蛋糕的顶部,每单位正方形上最多有一颗樱桃。切割应遵循以下规则:
1. 切割完成后每一块都是长方形或正方形。
2. 每次切割都是直的,沿着网格线。
3. 切割完成后每一块有且只有一颗樱桃。
4. 每次切蛋糕必须把你现在切的蛋糕完全分成两部分。
给出蛋糕的形状和樱桃的分布,你应该找到求出切割的最小的总长度。
### 输入格式
输入文件包含不超过 $1000$ 个测试用例。对于每个测试用例,第一行包含 $3$ 个整数 $n,m,k(1≤n, m≤20,0\le k\le n\times m)$,其中 $n\times m$ 为大小有一颗樱桃的方形单位。
接下来 $k$ 行,每一行有两个整数,这两个整数分别表示行号和网格中单位方格的列号,表示这个方格有一颗樱桃。
### 输出格式
对于每个测试用例,输出一行,包含一个整数,表示的切割的最小的总长度。
### 输入样例
```txt
3 4 3
1 2
2 3
3 2
```
### 输出样例
```txt
5
```