#include #define int long long using namespace std; signed main(){ int n;cin>>n; vectora(n); for(int i=0;i>aa; aa--; a[i]=aa; } const int inf=1e18; vector>to(n,{inf,inf}); vectorb(n,0); for(int i=1;ic(n,0); vectorvis(n); vis[a[0]]=true; auto dfs=[&](auto dfs,int now)->int{ int ret=1; if(to[now].first!=inf){ if(!vis[to[now].first]){ vis[to[now].first]=true; ret+=dfs(dfs,to[now].first); } } if(to[now].second!=inf){ if(!vis[to[now].second]){ vis[to[now].second]=true; ret+=dfs(dfs,to[now].second); } } c[now]=ret; return ret; }; dfs(dfs,a[0]); for(int i=0;i "< "< "<