#P8935. [JRKSJ R7] 茎

[JRKSJ R7] 茎

题目描述

你有一棵 nn 个点的根节点为 11 的有根树,现在你要对这棵树进行剪枝,每次你可以选择一个还未被剪掉的节点 uu 进行操作,然后剪掉 uu 的子树所有点(包括 uu)。当且仅当你剪掉 11 时,操作停止。

你知道 11xx 这条路径是这棵树的茎,需要特殊处理。所以你需要在第 kk 次剪枝时对 xx 进行操作,而非仅仅将其剪掉,即你不能在第 kk 次及以前对其祖先进行操作使其被连带剪掉。

求有多少种不同的操作序列,两个操作序列不同当且仅当长度不同或存在一次操作 ii 使得两操作序列在第 ii 次时选择的 uu 不同。输出答案模 109+710^9+7

输入格式

第一行三个数 n,k,xn,k,x
接下来 n1n-1 行每行两个数 u,vu,v,代表树上的一条边 (u,v)(u,v)

输出格式

一个数表示答案对 109+710^9+7 取模的结果。

3 2 2
1 2
1 3
1
5 2 4
1 2
1 3
2 4
2 5
9
5 1 4
1 2
1 3
2 4
2 5
12

提示

样例解释

对于样例 11,只有一种操作方法满足条件,第一次操作 33,第二次操作 22,第三次操作 11

对于样例 22,满足条件的操作序列:$\{3,4,1\},\{3,4,2,1\},\{3,4,5,1\},\{3,4,5,2,1\},\\ \{5,4,1\},\{5,4,2,1\},\{5,4,2,3,1\},\{5,4,3,1\},\{5,4,3,2,1\}$。

数据规模

本题采用捆绑测试。

Subtask\text{Subtask} nn\le 特殊性质 Score\text{Score}
11 77 55
22 1717 1010
33 5050 A\text A 55
44 1515
55 500500 A\text A 55
66 B\text B
77 C\text C 1010
88 4545

特殊性质 A\text A:保证 k=1k=1
特殊性质 B\text B:保证 x=1x=1
特殊性质 C\text C:保证 i[1,n1],i\forall i\in[1,n-1],ii+1i+1 有边。

对于 100%100\% 的数据,1k,xn5001\le k,x\le n\le 500