$ cat ./coding/2368-reachable-nodes-with-restrictions.md
[Coding]
2368. Reachable Nodes With Restrictions
────────────────────────────────────────────────────────────
2368. Reachable Nodes With Restrictions
class Solution:
def reachableNodes(self, n: int, edges: List[List[int]], restricted: List[int]) -> int:
graph = defaultdict(list)
for edge in edges:
u, v = edge
graph[u].append(v)
graph[v].append(u)
visited = set(restricted)
def dfs(source):
if source in visited:
return 0
visited.add(source)
count = 1
nodes = graph[source]
for node in nodes:
count += dfs(node)
return count
return dfs(0)
--tags#Graph
$ ls ./coding/ | grep -v 2368-reachable-nodes-with-restrictions