Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
121599 | 魈凯KBS | 树的深度 | C++ | 通过 | 100 | 0 MS | 248 KB | 581 | 2024-01-22 08:01:01 |
#include <bits/stdc++.h> using namespace std; int n,Deep; struct node { int left,right; } Tree[110]; void dfs(int i,int d)//i表示节点名,d表示当前深度 { if(i==0)//到达叶子节点时返回 return; Deep=max(Deep,d);//更新最深深度 dfs(Tree[i].left,d+1);//向左儿子遍历,当前深度+1 dfs(Tree[i].right,d+1);//向右儿子遍历,当前深度+1 } int main() { cin>>n; for(int i=1; i<=n; i++) cin>>Tree[i].left>>Tree[i].right; dfs(1,1);//从第一层的根节点开始遍历 cout<<Deep; return 0; }