1
# Runtime: 1218 ms (Top 16.46%) | Memory: 23.7 MB (Top 8.86%)3
def reachableNodes(self, edges: List[List[int]], maxMoves: int, n: int) -> int:11
heappush(queue, (0, 0))13
edgeofl = defaultdict(lambda: 0)17
cost, cur = heappop(queue)20
if p < maxMoves - cost:21
if (cur, nxt) not in edgevis and (nxt, cur) not in edgevis:25
edgevis.add((cur, nxt))26
edgevis.add((nxt, cur))28
heappush(queue, (cost + p + 1, nxt))31
if (cur, nxt) in edgevis:33
if bal <= edgeofl[(cur, nxt)]:35
if bal + edgeofl[(nxt, cur)] < p:36
ans += bal - edgeofl[(cur, nxt)]37
edgeofl[(cur, nxt)] = bal39
ans += p - edgeofl[(nxt, cur)] - edgeofl[(cur, nxt)]40
edgevis.add((cur, nxt))41
edgevis.add((nxt, cur))