#P13816. mujin_pc_2017_d Oriented Tree
mujin_pc_2017_d Oriented Tree
题目描述
有一棵树 ,它包含 个顶点,编号为 到 。对于每一个 ,第 条边连接顶点 和 。
Snuke 正在通过任意为 中的每条边分配方向来构建一个有向图 。(总共有 种不同的方法来构建 。)
对于一个固定的 ,我们定义 对于每个 ,如下:
- 当从顶点 到顶点 的过程中,必须逆着指定方向遍历的边的数量。
特别地,对于每个 ,。另外,通常情况下,。
我们进一步定义 。
Snuke 正在构建 使得 的值尽可能小。那么有多少种不同的方法可以构建 以使得 的值尽可能小,并且结果对 取模?
约束条件
- 给定的图是一个树。
输入格式
从标准输入接收以下格式的输入:
输出格式
输出使得 取最小值的不同构建方式数量,对 取模。
样例 解释
的最小值为 。有两种方式构建 以达到这个值,如下图所示:

样例 解释
的最小值为 。有六种方式构建 以达到这个值,如下图所示:

输入输出样例 #1
输入 #1
4
1 2
1 3
1 4
输出 #1
2
输入输出样例 #2
输入 #2
4
1 2
2 3
3 4
输出 #2
6
输入输出样例 #3
输入 #3
6
1 2
1 3
1 4
2 5
2 6
输出 #3
14
输入输出样例 #4
输入 #4
10
2 4
2 5
8 3
10 7
1 6
2 8
9 5
8 6
10 6
输出 #4
102