旅游运营商提议的行程包括参观巴黎的 $N$ 个纪念碑和博物馆,这些地点被建模为一个网格。行程的运作方式如下:巴士从西侧(任意街道)进入城市并穿过城市,在需要时向左或向右转以参观纪念碑,然后返回其进入城市时所使用的同一条东西向道路,如此往复,直到从东侧离开城市。
一个 $6 \times 5$ 网格城市中的行程可能如图所示。在图中,巴士在坐标 $(0, 2)$ 处进入城市(我们认为 $(0, 0)$ 是城市的西北角),首先参观位于 $(1, 2)$ 的纪念碑(已经在主干道上),向左转并参观位于 $(1, 0)$ 的纪念碑,返回主干道并向东移动,向右转并参观位于 $(2, 4)$ 的纪念碑,返回主干道,参观位于 $(4, 2)$ 的纪念碑(同样在主干道上),然后从坐标 $(5, 2)$ 离开城市。
巴士运营商计算得出,穿过一个街区的油耗为 $1$ 个单位。对于上述示例,总油耗为 $5 + 2 \times 2 + 2 \times 2 = 13$ 个单位。
你的任务是帮助旅游运营商选择巴士应行驶的东西向道路,以便在参观所有 $N$ 个纪念碑的同时,使行程的总油耗最小化。
重要说明
- 巴士运营商不允许返回到另一条平行的东西向道路;他们必须使用进入城市时所用的同一条道路。
- 同一坐标处可能存在多个纪念碑。
输入格式
输入包含多行,每行由以空格分隔的整数组成: 第一行包含南北向街道的数量 $X$ 和东西向街道的数量 $Y$。 第二行包含行程需要参观的纪念碑数量 $N$。 * 接下来的 $N$ 行,每行包含每个纪念碑的坐标 $x_i$ 和 $y_i$。
数据范围
- $1 \leqslant X, Y \leqslant 100\,000$;
- $1 \leqslant N \leqslant 100\,000$;
- $0 \leqslant x_i < X, 0 \leqslant y_i < Y$。
输出格式
输出应包含一行,内容为一个整数,表示行程的最小油耗。
样例
样例输入 1
6 5 4 1 0 1 2 2 4 4 2
样例输出 1
13
样例输入 2
5 7 9 0 0 0 2 0 3 2 2 2 3 3 2 4 3 4 4 4 6
样例输出 2
20