Course Schedule (Cycle Detection)

00:00
MediumGraphTopological SortBFSDFS
AmazonMicrosoftGoogle

There are numCourses courses 0..n-1. prerequisites[i]=[a,b] means must take b before a. Return true if you can finish all courses.

Examples

Input → n=2, prerequisites=[[1,0]]
Output → True
Input → n=2, prerequisites=[[1,0],[0,1]]
Output → False
Note: cycle
Input → n=1, prerequisites=[]
Output → True