#P5676. 穿越泥地

穿越泥地

题目描述

清早6{6:}00{00,}FarmerJohn{Farmer John}就离开了他的屋子,开始了他的例行工作:为贝茜挤奶。前一天晚上,整个农场刚经受过一场瓢泼大雨的洗礼,于是不难想见 ,FJ{FJ }现在面对的是一大片泥泞的土地。

FJ{FJ}的屋子在平面坐标(0,0){(0, 0)}的位置,贝茜所在的牛棚则位于坐标(X,Y)(500<=X<=500{(X,Y) (-500 <= X <= 500}; 500<=Y<=500){-500 <= Y <= 500)}处。当然咯, FJ{FJ}也看到了地上的所有N(1<=N<=10,000){N(1 <= N <= 10,000)}个泥塘,第i{i}个泥塘的坐标为 (Ai,Bi)(500<=Ai<=500{(A_i, B_i) (-500 <= A_i <= 500}500<=Bi<=500){-500 <= B_i <= 500)}。每个泥塘都只 占据了它所在的那个格子。

FarmerJohn{Farmer John}自然不愿意弄脏他新买的靴子,但他同时想眷到达贝茜所在的位置。为了数那些讨厌的泥塘,他已经耽搁了一些时间了。如果FarmerJohn{Farmer John }只能平 行于坐标轴移动,并且只在x{x}y{y}均为整数的坐标处转弯,

那么他从屋子门口出发,最少要走多少路才能到贝茜所在的牛棚呢?你可以认为从FJ{FJ}的屋子到牛棚总是存在至少一条不经过任何泥塘的路径。

输入格式

1{1}行: 3{3}个用空格隔开的整数:X{X,}Y{Y }N{N}

2..N+1{2..N+1}行: 第i+1{i+1}行为2{2}个用空格隔开的整数:Ai{A_i }Bi{B_i}

输出格式

1{1}行:

输出1{1}个整数,即FJ{FJ}在不踏进泥塘的情况下,到达贝茜所在牛棚所需要走过的最小距离

样例

输入样例

1 2 7
0 2
-1 3
3 1
1 1
4 2
-1 1
2 2

输出样例

11

提示

约翰的最佳路线是:

(0{(0,}0),(一{0),(一}1{1,}0)(一{0)(一}2{2,}0)(一{0)(一}2{2,}1)(一{1)(一}2{2,}2)(一{2)(一}2{2,}3)(一{3)(一}2{2,}4)(一{4)(一}1{1,}4{4)}(0,4),(0,3),(1,3),(1,2).{(0,4), (0,3), (1,3), (1,2).}

输入说明:

贝茜所在牛棚的坐标为(1,2){(1, 2)}

FarmerJohn{Farmer John}能看到7{7}个泥塘,它们的坐标分别为(0,2){(0, 2)}(1,3){(-1, 3)}(3,1){(3, 1)}(1,1){(1, 1)}(4,2){(4, 2)}(1,1){(-1, 1)}以及(2,2){(2, 2)}

以下为农场的简图:({*}FJ{FJ}的屋子,B{B}为贝茜呆的牛棚)

4 . . . . . . . . 
   3 . M . . . . . . 
Y  2 . . M B M . M . 
   1 . M . M . M . . 
   0 . . * . . . . . 
  -1 . . . . . . . . 
    -2-1 0 1 2 3 4 5 

           X