题目描述
Bessie 在一个冰封的湖面上游泳,湖面可以表示为二维的平面,坐标范围是-1,000,000,000..1,000,000,000。
湖面上的N(1 <= N <= 20,000)个位置有石块(编号分别为1到N),其它位置是冰面。
由于Bessie滑冰技术不够好,她通过推动自己旁边的石块,依靠反作用力向某一个方向前进,在碰到一个新的石块之前,Bessie是不会停下来的。(当然,最后会停留在某块石块的前一个格子里)由于Bessie无法计算复杂的角度,她只能够向东南西北四个方向前进。
很显然,Bessie不能够穿越石块,因此,Bessie仅仅可以向三个方向滑。
滑冰不是没有风险,Bessie滑向某个方向后必须能碰到某个石块,因此她必须很小心。
考虑下面的一个情况,Bessie希望到达在她东面的目标位置(x=5,y=1),(. = 冰块,* = 石头, B = Bessie, G = 目的位置)如果她直接向东滑,那么她会滑过目标位置,因为她通过撞上某块石头来停下来,一个能够到达目标位置的方案是这样的:
(a) (b) (c) (d)
4 .....*. .....*. .....*. .....*.
3 ..*.... slide ..*.... slide ..*.... slide ..*....
2 ......* north ..B...* east .....B* south ......*
1 .*B..G. ------> .*...G. ------> .*...G. ------> .*...B.
0 *....*. *....*. *....*. *....*.
0123456
在(a)中,Bessie 只能朝向北,东,或者南三个方向,但是只有在北面能撞上石头从而停下来,在(b)中,类似地,她只能向东走。
对于输入,石头 i位于坐标为X_i,Y_i的位置,(-1,000,000,000<= X_i <= 1,000,000,000; -1,000,000,000 <= Y_i <= 1,000,000,000),没有任何两块石头位于同一个位置,Bessie从Bx,By的位置出发(出发点一定与某个石头相邻),Bessie的目标位置是Gx,Gy(-1,000,000,000 <= Gx <= 1,000,000,000; -1,000,000,000 <= Gy <=1,000,000,000).
Bessie 并不介意长时间滑冰,但是,不停地推石头依靠反作用力前进很累。FJ 非常关心Bessie的健康,因此他希望知道Bessie最少要推多少次石头才能到达终点。
输入格式
- 第一行: 五个用空格隔开的整数: N, Bx, By, Gx, and Gy
- 第二行到第N+1行: 第i+1行用两个空格隔开的整数来描述第i个石头
输出格式
- 第一行: 一个整数表示Bessie至少要推多少次石头才能够到达终点
input
6 2 1 5 1
5 4
2 3
1 1
6 2
5 0
0 0
output
3
数据规模与约定
usaco 2010 feb gold ice
时间限制:1s
空间限制:256MB