提交时间:2023-08-23 16:53:15

运行 ID: 99743

#include <bits/stdc++.h> using namespace std; struct tree{ int l,r; }; int maxn; tree a[10005]; void dfs(int u,int d){ maxn = max(maxn,d); if(a[u].l!=0) dfs(a[u].l,d+1); if(a[u].r!=0) dfs(a[u].r,d+1); } int main(){ int n; cin>>n; for(int i = 1;i<=n;i++){ cin>>a[i].l>>a[i].r; } dfs(1,1); cout<<maxn<<endl; return 0; }