// 1266. 访问所有点的最小时间
// 平面上有 n 个点,点的位置用整数坐标表示 points[i] = [xi, yi]。请你计算访问所有这些点需要的最小时间(以秒为单位)。
// 你可以按照下面的规则在平面上移动:
// 每一秒沿水平或者竖直方向移动一个单位长度,或者跨过对角线(可以看作在一秒内向水平和竖直方向各移动一个单位长度)。
// 必须按照数组中出现的顺序来访问这些点。
// 来源:力扣(LeetCode)
// 链接:https://leetcode-cn.com/problems/minimum-time-visiting-all-points
// 示例 2:
// 输入:points = [[3,2],[-2,2]]
// 输出:5
public int minTimeToVisitAllPoints(int[][] points) {
//因为按照数组中顺序去访问,不需要考虑路径选择问题。
int sum = 0;
for (int i = 0; i < points.length - 1; i++) {
int[] pointA = points[i];
int[] pointB = points[i + 1];
int AtoB = Math.max(Math.abs(pointA[0] - pointB[0]), Math.abs(pointA[1] - pointB[1]));
sum += AtoB;
}
return sum;
}
leetcode-1266. 访问所有点的最小时间
最新推荐文章于 2024-07-19 19:25:43 发布