1219. 移动距离
原题链接
①. 题目
②. 思路
- 主要是奇数行要转弯,直接判断直接 再改变行号,直接把规律推出来,利用
/ %
将横纵坐标求出来
③. 学习点
④. 代码实现
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int w=sc.nextInt(); //一行的宽度 6 8
int m=sc.nextInt(); //2 92
int n=sc.nextInt(); //8 16
int x1=m%w==0?m/w-1:m/w;; //0 11
int x2=n%w==0?n/w-1:n/w; //1 2
int y1=m%w==0?w:m%w; //2 4
int y2=n%w==0?w:n%w; //2 8
//奇偶行判断
if(!(x1%2==0)) { //判断如果是奇数行,则调整改变列号
y1=w-y1+1;
}
if(!(x2%2==0)) { //判断如果是奇数行,则调整改变列号
y2=w-y2+1; //5
}
System.out.println(Math.abs(x1-x2)+Math.abs(y1-y2));
}
}