在牛客夏令营快要结束的时候,很多营员提出来要把整个夏令营期间的资料刻录成一张光盘给大家,以便大家回去后继续学习。牛客官方觉得这个主意不错!可是牛客官方一时没有足够的空光盘,没法保证每个人都能拿到刻录上资料的光盘,又来不及去买了,怎么办呢? 牛客官方把这个难题交给了旺仔哥哥,旺仔哥哥分析了一下所有营员的地域关系,发现有些营员是一个城市的,其实他们只需要一张就可以了,因为一个人拿到光盘后,其他人可以带着 U 盘之类的东西去拷贝啊! 可是,旺仔哥哥调查后发现,由于种种原因,有些营员并不是那么的合作,他们愿意某一些人到他那儿拷贝资料,也不愿意让另外一些人到他那儿拷贝资料,这与我们牛客宣扬的团队合作精神格格不入!!! 现在假设总共有 个营员 ,每个营员的编号为 。旺仔哥哥给每个人发了一张调查表,让每个营员填上自己愿意让哪些人到他那儿拷贝资料。当然,如果 A 愿意把资料拷贝给 B,而 B 又愿意把资料拷贝给 C,则一旦 A 获得了资料,则 B 和 C 都会获得资料。 现在,请你编写一个程序,根据回收上来的调查表,帮助旺仔哥哥计算出牛客官方至少要刻录多少张光盘,才能保证所有营员回去后都能得到夏令营资料?
输入描述:
输入的第一行包含一个正整数数 ,表示营员总数。接下来 行,每行包含若干个正整数。其中的第 行表示第 个营员愿意把资料拷贝给那些营员的编号,以 结束。如果一个营员不愿意拷贝资料给任何人,则相应的行只有 。一行中的数之间用一个空格隔开。
输出描述:
输出一个正整数,表示最少要刻录的光盘数。
备注:
(本题数据极水,欢迎提供数据)
加载中...