# Danny
###### tags: `mock_interview`
```python=
# hello
# def f(s, t, node):
# q = collecitons.deque()
# used = set()
# used.add(s)
# q.append([s,0])
# while len(q):
# head = q.popleft()
# if head[0] == t:
# return head[1]
# for i in node[head[0]]:
# if i not in used:
# used.add(i)
# q.append([i, head[1]+1])
# return -1
def f(s,t, node, gas, x):
q = collections.deque()
used = collections.defaultdict(int)
used[s] = 1
q.append([s, x])
while len(q):
head = q.popleft()
if head[0] == t:
return True
for i in node[head[0]]:
if used[i] < x:
if gas[i]:
used[i] += 1
q.append([i, x])
elif head[1] - 1 >= 0:
used[i] += 1
q.append([i, head[i]-1])
return False
a - b - c - d - e
|
f
# node1 : start -> end (end contain gas)
#nodes = {s}
#def findshortest