问题 7148 --跳棋2

7148: 跳棋2★★★

时间限制: 1 Sec  内存限制: 128 MB
提交: 34  解决: 15
[提交][状态][命题人:]

题目描述

乐乐有一个 n * n 的棋盘,棋盘上放置着 m 个障碍物,位置为 (x[i], y[i])。初始在 (X1, Y1) 位置有一颗棋子,乐乐想让棋子跳到 (X2, Y2),每次跳跃可以选择可以选择向上下左右任意一个方向跳 1 或 2 的距离,乐乐想知道最少需要跳几步,或者无法到达。

输入

第一行六个整数 n, m, X1, Y1, X2, Y2(0 < X1, Y1, X2, Y2 <= n <= 1000, 0 <= m <= n * n)
第 2 到 m+1 行每行两个整数表示 x[i], y[i](1 <= x[i], y[i] <= n, 保证初始位置和目标位置没有障碍物)

输出

一行一个整数,表示最少步数,若无法达到则输出 -1
样例输入
Copy
2 3 1 1 1 1
1 2
2 1
2 2
样例输出
Copy
0

提示

有障碍物仅表明该点不能抵达,不代表不能被跳过

来源

[提交][状态]