40pts求调
查看原帖
40pts求调
655082
YuTianQwQ楼主2023/10/4 17:17
#include <bits/stdc++.h>
using namespace std;
#define int long long
const int mx = 1e6 + 5;
struct T
{
    int l, r;
} tree[mx];
int len = 0;
void dfs(int root, int h)
{
    len = max(len, h);
    if (tree[root].l != 0)
        dfs(tree[root].l, h + 1);
    else if (tree[root].r != 0)
        dfs(tree[root].r, h + 1);
    return;
}
signed main()
{
    int n;
    cin >> n;
    for (int i = 1; i <= n; i++)
    {
        int l, r;
        cin >> l >> r;
        tree[i].l = l;
        tree[i].r = r;
    }
    dfs(1, 1);
    cout << len;
    return 0;
}
2023/10/4 17:17
加载中...