测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A70767. 谁的孙子最多II

编程题 基础

题目描述

给定一棵树,其中 1 号结点是根结点,问哪一个结点的孙子结点最多,有多少个。(孙子结点,就是儿子结点的儿子结点。)

输入格式

第一行一个整数 NN≤10000),表示树结点的个数。

此后 N-1 行,第 i 行包含一个整数 f_i,表示 i+1 号结点的父亲。

输出格式

一行两个整数,表示孙子结点最多的结点,以及其孙子结点的个数,如果有多个,输出编号最小的。

输入输出样例

输入 #1
5
1
1
2
4
输出 #1
1 1

说明/提示

## 思路

「谁的孙子最多II」建树后 DFS/BFS 统计深度、子树或求 LCA/直径。

## 步骤

1. 读入边并建树。
2. 从根遍历更新深度、父节点或子树大小。
3. 按题意输出询问结果。