给定正整数 N,M,已知有 N 对不同的括号,将其任意排列得到一个括号序列,共有 (2N)! 种排列方法。
称一个括号序列是合法的,当且仅当每对括号的下标之差都不是 M 的倍数。
求合法括号序列的数量模 109+7 的值。
输入格式
一行,两个正整数 N,M。
输出格式
一行,一个非负整数,表示答案。
样例 1
input
1 1
output
0
样例 2
input
3 2
output
288
样例 3
input
300 300
output
929890502
样例 4
input
100 23
output
171243255
样例 5
input
2000 1000
output
348739341
数据范围
对于所有数据,M≤N≤2000。
子任务编号 | N≤ | 分数 |
---|---|---|
1 | 5 | 9 |
2 | 100 | 12 |
3 | 300 | 13 |
4 | 900 | 18 |
5 | 2000 | 48 |
时间限制:0.5s
空间限制:512MB