问题 A: 任务依赖检查

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:4 解决:3

题目描述

小明正在规划一个复杂的学习计划,这个计划包含 N 个不同的任务(编号从 0 到 N−1 )。由于知识的依赖性,某些任务必须在其他任务完成之后才能开始。 给定任务的总数 N 和一个依赖关系列表 D。其中 D[i] = [ai, bi] 表示任务 ai 依赖于任务 bi,即必须先完成任务 bi 才能开始任务 ai。请你判断小明是否能完成所有的 N 个任务。如果存在循环依赖(例如任务 A 依赖 B,而 B 又依赖 A),则无法完成。

输入

第一行包含两个整数 N 和 M,分别表示任务总数和依赖关系的数量。 接下来的 M 行,每行包含两个整数 a 和 b,表示任务 a 依赖于任务 b。

输出

如果能完成所有任务,输出 "Yes"。 如果存在循环依赖无法完成,输出 "No"。

样例输入 复制

3 2
1 0
2 1

样例输出 复制

Yes

提示

2< N <=100