OpenJudge

0034:noip2015/day1/2/信息传递

总时间限制:
10000ms
单个测试点时间限制:
1000ms
内存限制:
128000kB
描述

n 个同学编号为 1 n正在玩一个信息传递的游戏。在游戏里每人都有一个固定的信息传递对象其中编号为 i 的同学的信息传递对象是编号为 Ti 的同学。 游戏开始时每人都只知道自己的生日。之后每一轮中所有人会同时将自己当前所知的生日信息告诉各自的信息传递对象注意可能有人可以从若干人那里获取信息但是每人只会把信息告诉一个人即自己的信息传递对象。当有人从别人口中得知自己的生日时游戏结束。请问该游戏一共可以进行几轮

输入输出样例 1 说明

游戏的流程如图所示。当进行完第 3 轮游戏后4 号玩家会听到 2 号玩家告诉他自己的生日所以答案为 3。当然3 轮游戏后2 号玩家、3 号玩家都能从自己的消息 来源得知自己的生日同样符合游戏结束的条件。

输入
输入共 2 行。
第 1 行包含 1 个正整数 n ,表示 n 个人。
第 2 行包含 n 个用空格隔开的正整数T1,T2,… ,Tn,其中第Ti个整数表示编号为 i 的同学的信息传递对象是编号为 Ti 的同学,Ti ≤n 且Ti ≠i。
数据保证游戏一定会结束。
输出
输出共 1 行,包含 1 个整数,表示游戏一共可以进行多少轮。
样例输入
5
2 4 2 3 1
样例输出
3
提示
对于 30%的数据 n ≤200;
对于 60%的数据,n ≤ 2500;
对于 100%的数据,n ≤ 200000。
来源
noip2015day1第二题

sro mhy && khb orz

全局题号
11789
添加于
2016-10-04
提交次数
20
尝试人数
13
通过人数
13