#include <bits/stdc++.h>
using namespace std;
int main() {
int n; cin >> n;
vector<int> arr(n+1);
for(int i = 1; i <= n; i++)
cin >> arr[i];
unordered_map<int,int> hash;
int cnt = 0;
for(int i = 1; i <= n; i++){
if(arr[i] > n)
continue;
int req = arr[arr[arr[i]]];
if(hash.find(req) != hash.end())
cnt += hash[req];
hash[arr[arr[arr[i]]]]++;
}
cout << cnt;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKCWludCBuOyBjaW4gPj4gbjsKCXZlY3RvcjxpbnQ+IGFycihuKzEpOwoJCglmb3IoaW50IGkgPSAxOyBpIDw9IG47IGkrKykKCWNpbiA+PiBhcnJbaV07CgkKCXVub3JkZXJlZF9tYXA8aW50LGludD4gaGFzaDsKCWludCBjbnQgPSAwOwoJZm9yKGludCBpID0gMTsgaSA8PSBuOyBpKyspewoJCWlmKGFycltpXSA+IG4pCgkJY29udGludWU7CgkJCgkJaW50IHJlcSA9IGFyclthcnJbYXJyW2ldXV07CgkJaWYoaGFzaC5maW5kKHJlcSkgIT0gaGFzaC5lbmQoKSkKCQljbnQgKz0gaGFzaFtyZXFdOwoJCQoJCWhhc2hbYXJyW2FyclthcnJbaV1dXV0rKzsKCX0KCWNvdXQgPDwgY250OwoJcmV0dXJuIDA7Cn0=