from collections import deque N=int(input()) P=[0]+list(map(int,input().split())) G=[set() for _ in range(N+1)] for i,p in enumerate(P): if p!=0:G[p].add(i) ans=0 for i,g in enumerate(G[1:],1): if P[i]!=0:continue for nxt in g: Q=deque([({i,nxt},nxt)]) while Q: grp,nxt=Q.popleft() if len(G[nxt])==0: if len(grp)>=3:ans+=1 continue for nxt2 in G[nxt]: if nxt2 not in grp: Q.append((grp|{nxt2},nxt2)) print(ans)