嘤嘤嘤
#include<bits/stdc++.h>
using namespace std;
vector<int> mmp[100086];
bool vis[100086];
int in[100086];
int q[100086];
int main()
{
int n,m;
int x,y;
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>y;
mmp[i].push_back(y);
in[y]++;
}
int f=1,r=0;
for(int i=1;i<=n;i++)
{
if(in[i]==0) q[++r]=i;
}
while(f<=r)
{
int y=q[f];
for(int i=0;i<mmp[y].size();i++)
{
int x=mmp[y][i];
in[x]--;
if(!in[x])
{
q[++r]=x;
}
}
f++;
}
cout<<n-r;
return 0;
}