逃脱阻碍者
问题描述:
class Solution(object):
def escapeGhosts(self, ghosts, target):
"""
:type ghosts: List[List[int]]
:type target: List[int]
:rtype: bool
"""
mins = float('inf')
for i in ghosts:
mins = min(mins, abs(i[0] - target[0]) + abs(i[1] - target[1]))
if abs(target[0]) + abs(target[1]) >= mins:
return False
return True
思路:其实转变一下题目意思的话可以看作是逃脱者和阻碍着同时朝着终点出发,如果逃脱者先到则逃脱成功,反之若有任何一个阻碍着比逃脱者先到,这逃脱失败,这样一来就很容易得到解题思路了