有没有1、2、6的测试数据呀TT
from collections import defaultdict
s= defaultdict(list)
n=int(input())
x=list(map(int,input().split()))
for i,j in enumerate(x):
s[str(j)].append(i+1)
cn=[0 for i in range(1+n)]
k='-1'
def bfs(k):
if k not in s:
return
for i in range(len(s[k])):
if k=='-1':
cn[s[k][i]]=1
j=str(s[k][i])
bfs(j)
else:
cn[s[k][i]]=cn[int(k)]+1
j=str(s[k][i])
bfs(j)
bfs(k)
m=max(cn)
print(m)
res=[]
for i in range(1,1+n):
if cn[i]==m:
res.append(i)
print(*res)