组合数 $C_n^m$ 表示的是从 $n$ 个物品中选出 $m$ 个物品的方案数。举个例子,从 $(1,2,3)$ 三个物品中选择两个物品可以有 $(1,2),(1,3),(2,3)$ 这三种选择方法。根据组合数的定义,我们可以给出计算组合数 $C_n^m$ 的一般公式: $$C_n^m = \frac{n!}{m!(n-m)!}$$ 其中 $n! = 1 \times 2 \times \dots \times n$。 小葱想知道如果给定 $n,m$ 和 $k$,对于所有的 $0 \leq i \leq n,0 \leq j \leq \min(i,m)$ 有多少对 $(i,j)$ 满足 $C_i^j$ 是 $k$ 的倍数。
第一行有两个整数 $t,k$,其中 $t$ 代表该测试点总共有多少组测试数据,$k$ 的意义见问题描述。 接下来 $t$ 行每行两个整数 $n,m$,其中 $n,m$ 的意义见问题描述。
$t$ 行,每行一个整数代表所有的 $0 \leq i \leq n,0 \leq j \leq \min(i,m)$ 中有多少对 $(i,j)$ 满足 $C_i^j$ 是 $k$ 的倍数。
1 2
3 3
1
在所有可能的情况中,只有 $C_2^1 = 2$ 是2的倍数。
2 5
4 5
6 7
0
7
| 测试点 | $n$ | $m$ | $k$ | $t$ |
|---|---|---|---|---|
| 1 | $\leq 3$ | $\leq 3$ | $=2$ | $=1$ |
| 2 | $\leq 3$ | $\leq 3$ | $=3$ | $\leq 10^4$ |
| 3 | $\leq7$ | $\leq7$ | $=4$ | $=1$ |
| 4 | $\leq7$ | $\leq7$ | $=5$ | $\leq10^4$ |
| 5 | $\leq10$ | $\leq10$ | $=6$ | $=1$ |
| 6 | $\leq10$ | $\leq10$ | $=7$ | $\leq10^4$ |
| 7 | $\leq20$ | $\leq100$ | $=8$ | $=1$ |
| 8 | $\leq20$ | $\leq100$ | $=9$ | $\leq10^4$ |
| 9 | $\leq25$ | $\leq2000$ | $=10$ | $=1$ |
| 10 | $\leq25$ | $\leq2000$ | $=11$ | $\leq10^4$ |
| 11 | $\leq60$ | $\leq20$ | $=12$ | $=1$ |
| 12 | $\leq60$ | $\leq20$ | $=13$ | $\leq10^4$ |
| 13 | $\leq100$ | $\leq25$ | $=14$ | $=1$ |
| 14 | $\leq100$ | $\leq25$ | $=15$ | $\leq10^4$ |
| 15 | $\leq100$ | $\leq60$ | $=16$ | $=1$ |
| 16 | $\leq100$ | $\leq60$ | $=17$ | $\leq10^4$ |
| 17 | $\leq2000$ | $\leq100$ | $=18$ | $=1$ |
| 18 | $\leq2000$ | $\leq100$ | $=19$ | $\leq10^4$ |
| 19 | $\leq2000$ | $\leq2000$ | $=20$ | $=1$ |
| 20 | $\leq2000$ | $\leq2000$ | $=21$ | $\leq10^4$ |