#CF2039G. Shohag 爱 Pebae
Shohag 爱 Pebae
G. Shohag 爱 Pebae
时间限制: 每个测试点 秒
内存限制: MB
有一棵包含 个节点的树。
有一个整数 。她想给每个节点分配一个值 —— 从 到 的整数。于是她请 计算满足以下条件的赋值方案数,结果对 取模:
. 对于每一对节点 ,从 到 的唯一简单路径上所有节点的值的最小公倍数()不能被该路径上的节点数整除。 . 所有 个节点的值的最大公约数()等于 。
这个问题对 来说太难了。因为 爱 ,他必须解决这个问题。请救救 !
输入
第一行包含两个用空格分隔的整数 和 (,)。
接下来的 行,每行包含两个整数 和 (),表示节点 和 之间有一条边。保证给定的边构成一棵树。
输出
输出一个整数 —— 有效的赋值方案数,对 取模。
示例
输入 1
6 6
1 2
2 3
3 4
4 5
3 6
输出 1
2
输入 2
2 5
1 2
输出 2
7
输入 3
12 69
3 5
1 4
2 3
4 5
5 6
8 9
7 3
4 8
9 10
1 11
12 1
输出 3
444144548
提示
在第一个样例中,有效的赋值是 和 。
在第二个样例中,有效的赋值是 、、、、、 和 。