在遥远的憨憨王国,有一个铁憨憨骑士团。骑士团中有 $n$ 位骑士。
为了使骑士们团结互助、尽可能发挥集体的战斗力,骑士团规定,每位骑士必须成为某一位骑士的“守护骑士”,遇到危险时优先保护他。
每位骑士都至少要被一位骑士守护。显然,骑士不能守护自己。
骑士团的团长有一天心血来潮,决定将骑士们分成若干个小队。有强迫症的团长对分队方法有着自己的一套要求:
1、每个骑士都不能和自己的守护骑士在同一个小队中;
2、如果有两个骑士在同一个小队中,并且守护了两个不同的骑士,那么他们守护的那两个骑士也必须在同一个小队中。
举例来说,如果骑士A守护骑士B,骑士C守护骑士D,A和C在同一个小队,那么B和D必须在同一个小队,并且这个小队不能是A和C所在的那个小队。
因为小队长的工资很高,为了节省开销,团长找到了你,想知道在满足以上条件的情况下,骑士团至少需要分成几个小队。
第一行一个整数 $n(2\le n\le 500)$,表示骑士团中骑士的数量。
第二行 $n$ 个整数,以空格隔开,第 $i$ 个数字 $a_i$ 表示编号为 $i$ 的骑士守护了编号为 $a_i$ 的骑士。
输入数据保证 $i\neq a_i$。
一行一个整数,表示骑士团至少需要分成几个小队。
只需要分成3个小队,第一个小队有1、2、9号骑士,第二个小队有5、6、7号骑士,第三个小队有3、4、8号骑士即可。