CF1020B.Badge

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Badge

题目描述

在一所学校,如果一个学生表现不好,老师就会在他的徽章上打一个洞。今天,老师逮到了n名学生在搞恶作剧。

这些学生从1到n编号。老师先逮到了a学生然后在他的徽章上打了个洞。但是这个学生说带头的是另一个学生pa。

于是老师又抓住学生pa在他的徽章上也打了个洞。这个学生又说其实是学生ppa在带头搞恶作剧。

这个过程一直持续了好一会儿,不过因为这些学生是有限的,最后老师抓住了一个徽章上已经有一个洞的学生。

在给这个倒霉孩子的徽章上又打了个洞以后,老师觉得有点累,需要蒸个桑拿于是他就不再继续了。

你不知道谁是老师逮到的第一个学生,但是你知道所有的数字pi。对于每一个a,如果第一个被逮到的学生是a,你的任务是找到谁会是徽章上面有两个洞的学生。

输入格式

第一行只有一个数字 n (1 <= n <=1000) ,表示搞恶作剧的学生的人数。

第二行有n个数字,p1, ..., pn (1<= pi <= n), pi表示被学生i指认是带头搞恶作剧的学生的编号。

输出格式

对从1 到 n之间的每个学生 a,如果a是第一个被抓到的学生,输出谁会是徽章上面有两个洞的学生。

说明/提示

图片

当a = 1, 老师的打洞顺序是1->2->3->2,输出2(2的徽章上会有俩洞);

当a = 2, 老师的打洞顺序是 2->3->2,输出2; 当a = 3,老师的打洞顺序是3->2->3,输出3。

对于第二个样例,不管老师先逮到谁,这个第一个被老师逮到的倒霉孩子将会得到两个洞。

样例

3
2 3 2
2 2 3 
3
1 2 3
1 2 3 

在线编程 IDE

建议全屏模式获得最佳体验