题目链接
思路:
所有环长度的 LCM。
代码:
(py)
import math
def dfs(i):
global vis
u=i
ans=1
while(p[i]-1)!=u:
ans+=1
vis[i]=1
i=p[i]-1
return ans
vis=[0]*100005
n,*p=map(int,open(0).read().split())
ans=1
for i in range(n):
if vis[i]:
continue
k=dfs(i)
ans=ans*k
print(ans)