#d2879. 传话游戏
传话游戏
传话游戏
题目描述
有 个人,编号为 到 。每个人都有一个固定的传话对象:第 个人会把消息传给第 个人( 可能等于 )。
游戏规则如下:每一轮由某个人 发起。 会对 说一个含有 个 w 的字符串 Oww...wwf;若 ,则 会对 说一个含有 个 w 的同样形式的字符串;如此继续,直到有人听到恰好含 个 w 的字符串 Owf,这个人就是本轮的接收者。(任意时刻至多只有一轮游戏在进行。)
求最小的 (),使得对每个人 都满足:若以 发起的一轮由 成为接收者,则以 发起的一轮必由 成为接收者。若不存在这样的 ,输出 。
输入格式
第一行一个整数 (),表示人数。
第二行 个整数 ,其中第 个数表示第 个人的传话对象 。
输出格式
输出最小的 ;若不存在,输出 。
样例输入
4
2 3 1 4
样例输出
3