欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
CF1020B.Badge
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
建议全屏模式获得最佳体验
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |