提交时间:2023-08-23 14:49:23
运行 ID: 99657
#include<bits/stdc++.h> using namespace std; int n; int ans; struct node{ int l,r; }tree[100001]; void dfs(int id,int step){ if(tree[id].l==0&&tree[id].r==0){ ans=max(ans,step); return; } dfs(tree[id].l,step+1); dfs(tree[id].r,step+1); } int main(){ cin>>n; for(int i=1;i<=n;i++){ cin>>tree[i].l>>tree[i].r; } dfs(1,1); cout<<ans<<endl; return 0; }