Jump Game III LeetCode solution in Python

1
class Solution:
2
def canReach(self, arr: List[int], start: int) -> bool:
3
vis = [0] * len(arr)
4
q = deque()
5
q.append(start)
6
while q:
7
cur = q.popleft()
8
print(cur)
9
vis[cur] = 1
10
if arr[cur] == 0:
11
return True
12
if cur + arr[cur] < len(arr) and vis[cur + arr[cur]] == 0:
13
q.append(cur + arr[cur])
14
if cur - arr[cur] >= 0 and vis[cur - arr[cur]] == 0:
15
q.append(cur - arr[cur])
16
return False

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0