Skip to content

Commit d69cd3d

Browse files
authored
Create 1462-course-schedule-iv.py
1 parent 45cadfe commit d69cd3d

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

python/1462-course-schedule-iv.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
class Solution:
2+
def checkIfPrerequisite(self, numCourses: int, prerequisites: List[List[int]], queries: List[List[int]]) -> List[bool]:
3+
adj = defaultdict(list)
4+
for prereq, crs in prerequisites:
5+
adj[crs].append(prereq)
6+
7+
def dfs(crs):
8+
if crs not in prereqMap:
9+
prereqMap[crs] = set()
10+
for pre in adj[crs]:
11+
prereqMap[crs] |= dfs(pre)
12+
prereqMap[crs].add(crs)
13+
return prereqMap[crs]
14+
15+
prereqMap = {} # map course -> set indirect prereqs
16+
for crs in range(numCourses):
17+
dfs(crs)
18+
19+
res = []
20+
for u, v in queries:
21+
res.append(u in prereqMap[v])
22+
return res

0 commit comments

Comments
 (0)