Go•minimum-time-visiting-all-points/solution.go
package main
func minTimeToVisitAllPoints(points [][]int) int {
time := 0
for index := 1; index < len(points); index++ {
dx := points[index][0] - points[index-1][0]
if dx < 0 {
dx = -dx
}
dy := points[index][1] - points[index-1][1]
if dy < 0 {
dy = -dy
}
if dx > dy {
time += dx
} else {
time += dy
}
}
return time
}
Python•minimum-time-visiting-all-points/solution.py
class Solution:
def minTimeToVisitAllPoints(self, points: list[list[int]]) -> int:
return sum(max(abs(x2 - x1), abs(y2 - y1)) for (x1, y1), (x2, y2) in zip(points, points[class="syntax-number">1:]))
TypeScript•minimum-time-visiting-all-points/solution.ts
function minTimeToVisitAllPoints(points: number[][]): number {
let time = class="syntax-number">0; for (let index = class="syntax-number">1; index < points.length; index += class="syntax-number">1) time += Math.max(Math.abs(points[index][class="syntax-number">0] - points[index - class="syntax-number">1][class="syntax-number">0]), Math.abs(points[index][class="syntax-number">1] - points[index - class="syntax-number">1][class="syntax-number">1])); return time;
}