P4068.课程表
Leetcode 207.课程表
题目描述
你这个学期必须选修 numCourses 门课程,课程编号为 0 到 numCourses−1。
在选修某些课程之前,需要先完成一些先修课程。
先修课程关系由数组 prerequisites 给出,其中 prerequisites[i]=[ai,bi] 表示:如果要学习课程 ai,必须先学习课程 bi。
请判断是否可能完成所有课程的学习。
如果可以完成所有课程,输出 true;否则输出 false。
输入描述
第一行输入整数 numCourses ,表示课程数量。
第二行输入整数 m,表示先修课程关系数量。
接下来输入 m 行,每行包含两个整数 ai 和 bi,表示学习课程 ai 之前必须先完成课程 bi。
输出描述
如果可以完成所有课程,输出:
true
否则输出:
false
样例 1
输入
2
1
1 0
输出
true
样例解释
总共有 2 门课程。
学习课程 1 之前,需要先完成课程 0。
可以先学习课程 0,再学习课程 1,因此可以完成所有课程。
样例 2
输入
2
2
1 0
0 1
输出
false
样例解释
学习课程 1 之前,需要先完成课程 0。
学习课程 0 之前,又需要先完成课程 1。
两门课程互相依赖,无法完成所有课程。
数据范围
1<=numCourses<=2000
0<=m<=5000
0<=ai,bi<numCourses
所有先修课程关系互不相同。