1266. 访问所有点的最小时间
题目分析:
1、points是一个二维数组用来存储
2、二维数组长度为n,即点的个数
3、当两个点的水平距离和竖直距离相等时,所用时间就是水平距离长度
4、当两个点的水平距离和竖直距离不相等时,所用时间就是两个距离中长的那个
代码:
class Solution {
public static void main(String[] args){
int[][] points={[1,1],[3,4],[-1,0]};
System.out.println(minTimeToVisitAllPoints(points));
}
public static int minTimeToVisitAllPoints(int[][] points) {
int seconds=0;
for(int i=1;i<points.length;i++){
seconds+=distance(points[i-1],points[i]);
}
return seconds;
}
public static int distance(int[] first,int[] two){
if(Math.abs(first[0]-two[0])==Math.abs(first[1]-two[1])){
return Math.abs(first[0]-two[0]);
}else{
return Math.max(Math.abs(first[0]-two[0]),Math.abs(first[1]-two[1]));
}
}
}
运行结果
7