• 板块灌水区
  • 楼主ma_yu_chen_
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/12/15 23:03
  • 上次更新2024/12/16 17:30:49
查看原帖
542633
ma_yu_chen_楼主2024/12/15 23:03

某个神秘的魔法学院,每年都会举行一场盛大的魔法阵演练。在演练中,学院的学员们会被传送到不同的区域,而每次传送后,学员们的站位都会发生变化。传送的规则是:第 i i 个学员会被传送到第 a i a i ​ 个位置。 为了测试学员们的反应能力和协作精神,学院的魔法导师规定,所有学员必须经过若干次传送后,才能回到最初的位置。这就像是一个魔法循环,学员们在不断地“重置”自己的位置,直到队伍恢复到最初的阵型。

你的任务是帮助导师计算出学员们最少经过多少次传送,才能回到最初的队形。只有通过最少的传送次数,学员们才能在学院的魔法阵演练中取得最佳成绩。

【输入描述】 第一行包含一个整数N,表示队伍的人数, n ≤ 10000 n≤10000。接下来 N N行,每行一个正整数 a i a i ​ 表示左起第 i 个人接下来出现在左起第 个 a i a i ​ 位置上。

【输出描述】 仅包含一行,一个整数M,表示学员们最少经过多少次传送。答案在64位整数范围之内。

【输入样例】 5 2 3 4 5 1 【输出样例】 5

这个是不是像什么题啊?

2024/12/15 23:03
加载中...