南昌网站建设在哪里,南京维露斯网站建设,网站文章更新频率,在哪些网站做收录比较快题目描述 X 星球居民小区的楼房全是一样的#xff0c;并且按矩阵样式排列。其楼房的编号为 1,2,3,
当排满一行时#xff0c;从下一行相邻的楼往反方向排号。
比如#xff1a;当小区排号宽度为 6 时#xff0c;开始情形如下#xff1a;
1 2 3 4 5 6
12 …题目描述 X 星球居民小区的楼房全是一样的并且按矩阵样式排列。其楼房的编号为 1,2,3,···
当排满一行时从下一行相邻的楼往反方向排号。
比如当小区排号宽度为 6 时开始情形如下
1 2 3 4 5 6
12 11 10 9 8 7
13 14 15 ···
我们的问题是已知了两个楼号 m,n需要求出它们之间的最短移动距离不能斜线方向移动
输入描述 输入为 3 个整数 w,m,n空格分开都在 1 到 10000 范围内 w 为排号宽度 m,n 为待计算的楼号。
输出描述 要求输出一个整数表示 m,n 两楼间最短移动距离。
输入输出样例 示例1 输入 6 2 8 输出 4 示例2
输入
4 7 20
输出
5
运行限制 import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scan new Scanner(System.in);int wscan.nextInt();int mscan.nextInt();int nscan.nextInt();int mhang0;int nhang0;int mlie0;int nlie0;int ans0;if(m%w0){mhangm/w;}else{mhang(m/w)1;}if(n%w0){nhangn/w;}else{nhang(n/w)1;}if(mhang%20){mliew*mhang-m1;}else{mliem-(w*(mhang-1));}if(nhang%20){nliew*nhang-n1;}else{nlien-(w*(nhang-1));}ansMath.abs(mhang-nhang)Math.abs(mlie-nlie);System.out.println(ans);scan.close();}
} 最大运行时间1s最大运行内存: 256M