#L2546. 「JSOI2018」潜入行动

「JSOI2018」潜入行动

#2546. 「JSOI2018」潜入行动

题目描述

外星人又双叒叕要攻打地球了,外星母舰已经向地球航行!这一次,JYY 已经联系好了黄金舰队,打算联合所有 JSOIer 抵御外星人的进攻。

在黄金舰队就位之前,JYY 打算事先了解外星人的进攻计划。现在,携带了监听设备的特工已经秘密潜入了外星人的母舰,准备对外星人的通信实施监听。

外星人的母舰可以看成是一棵 nn 个节点、 n1n - 1 条边的无向树,树上的节点用 1,2,,n1, 2, \ldots, n 编号。JYY 的特工已经装备了隐形模块,可以在外星人母舰中不受限制地活动,可以神不知鬼不觉地在节点上安装监听设备。

如果在节点 uu 上安装监听设备,则 JYY 能够监听与 uu 直接相邻所有的节点的通信。换言之,如果在节点 uu 安装监听设备,则对于树中每一条边 (u,v)(u, v) ,节点 vv 都会被监听。特别注意:放置在节点 uu 的监听设备并不监听 uu 本身的通信,这是 JYY 特别为了防止外星人察觉部署的战术。

JYY 的特工一共携带了 kk 个监听设备,现在 JYY 想知道,有多少种不同的放置监听设备的方法,能够使得母舰上所有节点的通信都被监听?为了避免浪费,每个节点至多只能安装一个监听设备,且监听设备必须被用完。

输入格式

输入第一行包含两个整数 n,kn, k ,表示母舰节点的数量 nn 和监听设备的数量 kk 。 接下来 n1n-1 行,每行两个整数 u,vu, v1u,vn1 \le u, v \le n ),表示树中的一条边。

输出格式

输出一行,表示满足条件的方案数。因为答案可能很大,你只需要输出答案 mod1,000,000,007\bmod 1,000,000,007 的余数即可。

样例

输入

5 3
1 2
2 3
3 4
4 5

输出

1

样例解释 样例数据是一条链 123451-2-3-4-5 。 首先,节点 2244 必须放置监听设备,否则 1,51, 5 将无法被监听(放置的监听设备无法监听它所在的节点)。剩下一个设备必须放置在 33 号节点以同时监听 2,42, 4 。因此在 2,3,42, 3, 4 节点放置监听设备是唯一合法的方案。

数据范围与提示

  • 存在 10%10\% 的数据, 1n201 \le n \le 20
  • 存在另外 10%10\% 的数据, 1n1001 \le n \le 100
  • 存在另外 10%10\% 的数据, 1k101 \le k \le 10
  • 存在另外 10%10\% 的数据,输入的树保证是一条链;
  • 对于所有数据, 1n1051 \le n \le 10^51kmin{n,100}1 \le k \le \min\{n, 100\}