程序输出的 ans 表示的是( )。
#include <iostream>
using namespace std;
int n, fa[1000007], f[1000007], ans;
int main() {
cin >> n;
for (int i = 2; i <= n; ++i) {
cin >> fa[i];
}
for (int i = n; i >= 2; --i) {
if (f[fa[i]] + f[i] + 1 > ans) {
ans = f[fa[i]] + f[i] + 1;
}
if (f[i] + 1 > f[fa[i]]) {
f[fa[i]] = f[i] + 1;
}
}
cout << ans << endl;
return 0;
}
树中距离最远的两个结点之间路径所经过的边数
根结点 1 到最远叶子结点之间路径所经过的边数
树中叶子结点的个数
所有结点的父结点编号之和