编程题

最短距离

【题目描述】

有一个居民小区的楼房全是一样的,并且按矩阵样式排列。其楼房的编号为 1,2,3……,当排满一行时,从下一行相邻的楼往反方向排号。

例如:小区为 3 行 6 列,矩阵排列方式:

要求:已知小区楼房有 w 列及两个楼房楼号 m 和 n,求从 m 号楼到 n 号楼之间的最短路线经过几个楼(不能斜线方向移动)。

例如上图:当 w=6,m=8,n=2,从 8 号楼到 2 号楼最短的路线经过 5,4,3,2 四个楼(9,10,11,2 也经过四个楼),故最短路线为 4(注:不考虑路线只考虑最短路线经过几个楼)。

输入三个正整数 w(1<w<21),m(1<m<10001),n(1<n<10001),且 m 不等于n。三个正整数之间以一个空格隔开,输出m 到n的最短路线经过几个楼。

【输入描述】

在一行输入三个正整数 w,m,n,三个正整数之间以一个空格隔开

【输出描述】

输出 m 到 n 的最短路线经过几个楼

【输入样例】

6 8 2

【输出样例】

4
查看答案
赣ICP备20007335号-2