【有问题】蓝桥杯小朋友崇拜圈
作者:
lk25
,
2022-04-02 20:48:23
,
所有人可见
,
阅读 217
样例能过,但是提交不了
import os
import sys
from collections import deque
N=100010
n=int(input())
ans=[0]*N;st=[False]*N
ne=[0]+[int(x) for x in input().split()]
def dfs(x):
global ne,idx,cnt
if d[x]:
if x!=path[1]:
st[path[1]]=True
return
cnt=idx
for i in range(idx,0,-1):
st[path[i]]=True
return cnt
d[x]=1
idx+=1
path[idx]=x
dfs(ne[x])
res=0
for i in range(1,n+1):
if st[i]:
continue
path=[0]*N;d=[0]*N;idx=0;cnt=0
dfs(i)
res=max(res,cnt)
print(res)