#M3015. 精灵王国

精灵王国

题目描述

在一个矩阵精灵王国里有两个精灵,一个叫黑精灵,个叫白精灵。他们住在一个NMN*M的矩阵方格中的不同位置,黑精灵住在矩阵方格的左上角方格里(11)(1,1),白精灵住在矩阵方格的右下角方格里(NM)(N,M)。在这个矩阵方格单还有一对可穿越的门,穿越门的功能是当进入其中一扇门的位置后可直接穿越到另一扇门的位置。一天黑精灵要去白精灵家做客,需要穿过方格矩阵到达白精灵家,穿行矩阵方格。

要求∶

1.每次只能走一个方格,可以向上、向下、向左、向右行走;

2.每走一个方格计为1步,但从一扇穿越门穿越到另一扇穿越门不记步数(从方格走到穿越门和从穿越门到其他方格都计1步);

3.可借助穿越门去白精灵家(可减少行走步数)。

为了尽快到达白精灵家,请你帮助黑精灵找一条最短路线,并且计算出最短路线的步数。

输入描述

共三行。 第一行两个正整数n,m,代表矩阵的行和列(1<=n,m<=200)

后面两行每行两个整数,代表两个穿越门所在的行和列。

输出描述

输出一个整数,表示黑精灵去白精灵家最短路线需要走多少步。

输入输出样例

3 4
2 3
3 1
4

来源

码极客原创