欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
CF1249B1.Books Exchange (easy version)
Books Exchange (easy version)
题目描述
本题的简单版与困难版的唯一区别在于数据范围。
有 个小朋友,每个人正在读一本独一无二的书。在每一天结束时,第 个小朋友会把自己的书交给第 个小朋友(如果 ,则他把书交给自己)。保证所有 都是 到 的不同整数(即 是一个排列)。序列 在每天都不会改变,是固定的。
例如,如果 且 ,那么在第一天结束时,第 个小朋友的书会交给第 个小朋友,第 个小朋友的书会交给第 个小朋友,依此类推。在第二天结束时,第 个小朋友的书会交给第 个小朋友,第 个小朋友的书会交给第 个小朋友,依此类推。
你的任务是,对于每个 (),求出第 个小朋友的书第一次回到他手里的天数。
例如,。第 个小朋友的书会被依次传递给:
- 第一天后,传到第 个小朋友手中,
- 第二天后,传到第 个小朋友手中,
- 第三天后,传到第 个小朋友手中,
- 第四天后,回到第 个小朋友手中。
所以,经过四天,第一个小朋友的书会第一次回到他手中。第四个小朋友的书会在一天后就回到他手中。
你需要回答 个独立的询问。
输入格式
输入的第一行包含一个整数 (),表示询问的数量。接下来有 个询问。
每个询问的第一行包含一个整数 (),表示该询问中的小朋友数量。第二行包含 个整数 (,所有 互不相同,即 是一个排列),其中 表示第 个小朋友的书会交给第 个小朋友。
输出格式
对于每个询问,输出 个整数 ,其中 表示在该询问中第 个小朋友的书第一次回到他手里的天数。
说明/提示
由 ChatGPT 4.1 翻译
样例
6
5
1 2 3 4 5
3
2 3 1
6
4 6 2 1 5 3
1
1
4
3 4 1 2
5
5 1 2 4 3
1 1 1 1 1
3 3 3
2 3 3 2 1 3
1
2 2 2 2
4 4 4 1 4
在线编程 IDE
建议全屏模式获得最佳体验
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |