#121. 团队首领
团队首领
说明
某 E 正在机房值班,小朋友吵得她头晕脑胀,她将N名吵闹的小朋友带出了机房,依次编号为1,2,⋯,N。
某 E 发现,这些小朋友形成了若干个小团伙,每个小朋友属于且只属于一个小团伙。她要求每一名小朋友指出自己所在小团伙的首领编号,第i名小朋友指认的首领编号为Si。
假定所有小朋友都没有说谎,请问这N名小朋友中一共形成了多少个小团伙?
输入格式
输入共两行。
输入的第一行为一个正整数N。
输入的第二行为N个正整数,第i个为Si。
输出格式
输出一行一个整数,代表机房里小团体的数目。
样例
5
1 1 3 4 1
3
提示
【数据范围】
对于 30%的测试数据,每个小团体有且只有一个人。
对于 100% 的测试数据,N≤10^6,1≤Si≤N。数据保证有解且合法,即每个小朋友都真实地指认了 ta 所在团伙的首领。
【样例解释】
输入的第一行5,代表接下来有5个数,这5个数代表每个小朋友指认的自己所在团伙的首领编号,也就是说1 1 3 4 1的意思就是,第一个小朋友的首领是编号1,第二个小朋友的首领是编号1,第三个小朋友的首领是编号3……第5个小朋友的首领是编号1,所以首领的编号分别为1、3、4,一共有3个。