AlvinZH双掉坑里了

时间限制: 1000 ms 内存限制: 65536 kb
总通过人数: 0 总提交人数: 1

题目描述

AlvinZH双掉进坑里了!

幸运的是,这坑竟然是宝藏迷宫的入口。这一次AlvinZH机智地带了很多很多背包——装金币!

假设现在AlvinZH捡到了n块金币,他一共带了m个背包,每个背包可以装任意多金币,但AlvinZH不允许有空的背包。

请你帮他计算一下一共有多少种装金币的方法吧!

注意:所有背包看作相同,即{1,3}和{3,1}是同一种方法。

输入

输入包含多组数据。

每组数据包含两个正整数,为金币数n(1≤n≤10^4),背包数m(1≤m≤10^3,且m≤n)。

输出

对于每组数据,输出一行,为使用所有背包装金币的方法数(结果对1000007取模)。

输入样例

4 2
9 3

输出样例

2
7

样例解释

4:{1,3}{2,2};

9:{1,1,7}{1,2,6}{1,3,5}{1,4,4}{2,2,5}{2,3,4}{3,3,3}。

HINT

这不是简单的背包问题,请勿套公式。

AlvinZH:其实和背包没有任何关系~

相关推荐