分析
代码
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int N=1e5+5;
int a[N];
bool st[N];
int main(){
int n;
cin >> n;
for(int i=1;i<=n;i++){
cin >> a[i];
}
int cnt=0;
for(int i=1;i<=n;i++){
if(!st[i]){
cnt++;
for(int j=i;!st[j];j=a[j]){//位置j指向a[j]的元素
st[j]=true;
}
}
}
cout << n-cnt;
}