当前没有测试数据。
题目描述
棋盘上有一个过河卒,它需要从起点走到终点。这个过河卒的行走方式比较特殊:它可以像国际象棋中的"马"那样走"日"字。
棋盘是一个 N×N 的网格,坐标从 (1,1) 到 (N,N)。过河卒从起点 (sx,sy) 出发,要到达终点 (ex,ey)。
过河卒每次可以移动到以下 8 个位置之一(如果目标位置在棋盘内):
- (x−2,y−1), (x−2,y+1)
- (x−1,y−2), (x−1,y+2)
- (x+1,y−2), (x+1,y+2)
- (x+2,y−1), (x+2,y+1)
请计算过河卒从起点到终点最少需要多少步?如果无法到达终点,输出 −1。
输入格式
第一行输入一个整数 N,表示棋盘大小。
第二行输入四个整数 sx,sy,ex,ey,分别表示起点的行、列坐标和终点的行、列坐标。
输出格式
输出一个整数,表示最少步数;如果无法到达,输出 −1。
样例 #1
输入
8
1 1 5 5
输出
4
样例 #2
输入
5
1 1 4 4
输出
2
数据范围
对于 100% 的数据,3≤N≤100,1≤sx,sy,ex,ey≤N,起点和终点不同。