题目描述
有一栋有n个房间的大楼,编号从 1 到 n。
我们可以从大楼中的任意一个房间移动到另一个房间。
我们将以下事件称为移动:一个人从某个房间 i 去到另一个房间 j (i=j)。
最初,大楼中每个房间都有一个人。
之后,我们知道到目前为止发生了恰好 k 次移动。
我们现在关心的是每个房间中的人数。有多少种不同的人数组合对应这 n 个房间?
计算结果对 (109+7) 取模。
约束条件
- 输入中的所有值都是整数。
- 3≤n≤2×105
- 2≤k≤109
输入
从标准输入读入输入数据,输入格式如下:
n k
输出
打印出现有 n 个房间中人数的不同组合数量,对 (109+7) 取模。
示例输入 1
3 2
示例输出 1
10
设 c1、c2 和 c3 分别是房间 1、2 和 3 中的人数。有 10 种不同的人数组合 (c1,c2,c3):
- (0,0,3)
- (0,1,2)
- (0,2,1)
- (0,3,0)
- (1,0,2)
- (1,1,1)
- (1,2,0)
- (2,0,1)
- (2,1,0)
- (3,0,0)
例如,如果房间 1 中的人去了房间 2,然后房间 2 中的一个人去了房间 3,那么 (c1,c2,c3) 就是 (0,1,2)。
示例输入 2
200000 1000000000
示例输出 2
607923868
计算结果对 (109+7) 取模。
示例输入 3
15 6
示例输出 3
22583772