题目背景
ZHY 有很多树,每个树上都有很多点,每个点上都有一个数,但他忘记了每个点上写的数是什么了。
题目描述
ZHY 拥有 m 棵树,每棵树形态相同,且均有 n 个点。定义 (i,j) 是第 i 棵树上的第 j 个点,你需要为每个点 (i,j) 赋一个值 a(i,j),且满足以下条件:
-
对于 ∀i∈[1,m],∀j∈[1,n],有 a(i,j)∈{0,1}。
-
对于 ∀i∈[1,n],有 ∑j=1ma(j,i)≤1。
-
对于任意的一条边 (u,v) 和 i∈[1,m],有 a(i,u)+a(i,v)≤1。
请你计算有多少种赋值方式,对 109+7 取模。注意这 m 棵树是有序的。
输入格式
第一行两个正整数 n,m。
接下来 n−1 行,每行两个正整数 u,v,表示这 m 棵树中每棵树都有一条从 u 到 v 的无向边。保证数据可以构成一棵树。
输出格式
输出一行表示答案。
3 1
1 2
2 3
5
5 2
1 2
1 3
2 4
2 5
103
提示
本题使用捆绑数据。
对于所有的数据,1≤n≤106,1≤m≤109。
- Subtask 0(10 pts):n,m≤4。
- Subtask 1(30 pts):n,m≤103。
- Subtask 2(15 pts):n≤103。
- Subtask 3(25 pts):m=1。
- Subtask 4(20 pts):无特殊限制。