#P16555. [Bapc2023]Jungle Job
[Bapc2023]Jungle Job
题目背景
当地的丛林正在被猴群占领。每天都会有一只新猴子来到你最喜欢的一棵树上,这棵树共有 根树枝。
每根树枝最多容纳一只猴子。猴子是群居动物,因此所有被占据的树枝必须构成一个连通块。由于你无法区分猴子个体,一张照片只由“哪些树枝上有猴子”决定。
下图展示了样例 1 在第 3 天时的四种不同照片。只有相互接触的树枝才相连;图中树枝 1 与 2、树枝 3 与 4 之间存在细小空隙,因此并不相连。

样例 1 在第 3 天的四种连通占据方式
题目描述
给定一棵包含 个结点的树。对于每个 ,求恰好选择 个结点,并使这些结点在树上诱导出的子图连通的方案数。
答案对 取模。
输入格式
第一行包含一个整数 (),表示树枝数量。
接下来 行。第 行()包含一个整数 (),表示结点 与结点 相连。
结点编号为 。结点 与树根相连,并且本身也可以容纳一只猴子。
输出格式
输出 个整数。第 个整数表示大小恰好为 的连通子树数量,对 取模。
整数之间可以使用任意空白字符分隔。
样例 1
输入
5
0
0
1
1
输出
5
4
4
3
1
样例 2
输入
3
0
1
输出
3
2
1