All paths DAG

Write codeMedium18 min

Your task

Given a directed acyclic graph as an adjacency list (graph[i] lists nodes reachable directly from node i), return all paths from node 0 to node n-1, where n = len(graph). Each path is the ordered list of node indices; return the overall list sorted. The graph has at most 8 nodes.

Examples

all_dag_paths(graph: list[list[int]]) -> list[list[int]]
Example 1
Inputall_dag_paths([[1, 2], [3], [3], []])
Output[[0, 1, 3], [0, 2, 3]]