题解 | 绕距
绕距
https://www.nowcoder.com/practice/7a245fc6284f4139b4fb21de58e68483
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNextInt()) { // 处理多组输入
int x1 = in.nextInt();
int y1 = in.nextInt();
int x2 = in.nextInt();
int y2 = in.nextInt();
// 计算曼哈顿距离 dM
double dM = Math.abs(x1 - x2) + Math.abs(y1 - y2);
// 计算欧几里得距离 dE:先算平方和,再开根号
double dx = x1 - x2;
double dy = y1 - y2;
double dE = Math.sqrt(dx * dx + dy * dy);
// 计算绕距 delta
double delta = Math.abs(dM - dE);
// 输出结果(直接输出即可,系统会接受精度范围内的结果)
System.out.println(delta);
}
in.close();
}
}
查看13道真题和解析