D - サバゲー
Editorial
/
Time Limit: 2 sec / Memory Limit: 256 MB
問題文
パンチくんが運営している会社では、サバイバルゲームが大流行りです。
通常のサバイバルゲームはチームが 2 つですが、パンチくんは普通のゲームに飽きてしまったため、多くのチームで対戦することにしました。
参加人数と、チームの数が与えられるので、チームの分け方が何パターンあるか求めて下さい。
ただし、各参加者は必ずどれか 1 つだけのチームに所属するものとし、また 0 人のチームがあってはならないものとします。
入力
入力は以下の形式で標準入力から与えられる。
N M
- サバイバルゲームに参加する人数 N (2 ≦ N ≦ 1000) と、チームの数 M (2 ≦ M ≦ N) が与えられる。
部分点
M = 2 を満たすテストケースに正解した場合、部分点として 40 点が与えられる。
出力
チームの分け方のパターン数を 1000000007( = 1,000,000,007) で割った余りを出力せよ。出力の末尾には改行をいれること。
入力例1
2 2
出力例1
1
2 人を 2 チームに分ける分け方は、 1 通りしかありません。
入力例2
3 2
出力例2
3
3 人を 2 チームに分ける分け方は、
- { A, B }, { C }
- { A, C }, { B }
- { A }, { B, C }
の 3 通りです。
参加者は互いに区別がつきますが、チームは区別がつかないことに注意して下さい。
{ A, B }, { C }と、{ C }, { A, B } は同じものとしてカウントします。
入力例3
500 2
出力例3
695241506
入力例4
20 10
出力例4
584923236