#P1156. 依赖安装
显示设置
本题导航点一下展开
我的笔记
✕
依赖安装
题目描述
一个软件由 个安装包组成,编号 。有 条依赖关系,第 条写成 ,表示包 必须在包 安装完成之后才能开始安装。
每一轮你可以同时安装任意多个包,只要在这一轮开始时它们的依赖都已经装好了。同一轮里安装的包之间互不影响。
求把所有包装完最少需要多少轮。如果依赖关系里存在环(永远装不完),输出 。
输入格式
第一行两个整数 。
接下来 行,每行两个整数 。
输出格式
一行一个整数,表示最少轮数,或 。
输入输出样例 #1
输入 #1
5 5
1 2
1 3
2 4
3 4
4 5
输出 #1
4
说明
数据范围
- 对于 的数据,,,。两个包之间可能有多条依赖,也可能没有任何依赖关系。