Medium
Squirrel Simulation — Python
Full explanation · Time O(n) · Space O(1)
# Time: O(n)
# Space: O(1)
class Solution(object):
def minDistance(self, height, width, tree, squirrel, nuts):
"""
:type height: int
:type width: int
:type tree: List[int]
:type squirrel: List[int]
:type nuts: List[List[int]]
:rtype: int
"""
def distance(a, b):
return abs(a[0] - b[0]) + abs(a[1] - b[1])
result = 0
d = float("inf")
for nut in nuts:
result += (distance(nut, tree) * 2)
d = min(d, distance(nut, squirrel) - distance(nut, tree))
return result + d