#include using namespace std; using ll = long long; int main(){ ios::sync_with_stdio(false); cin.tie(0); int n; cin >> n; vector> g(n); vector p(n); vector used(n, false); for(int i = 0; i < n; i++){ cin >> p[i]; p[i]--; if(p[i] == -1) continue; used[p[i]] = true; g[i].emplace_back(p[i]); } int ans = 0; auto dfs = [&](auto dfs, int v, int p, int dep) -> void { if(dep == 2){ ans++; return; } for(auto u : g[v]){ if(u == p) continue; dfs(dfs, u, v, dep + 1); } }; for(int v = 0; v < n; v++){ if(!used[v]) dfs(dfs, v, -1, 0); } cout << ans << '\n'; }