【2016】组合数问题:统计满足C(i,j)是k倍数的数对数量

xy196384 程序题 共 个子题

问题描述

组合数 $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

1 2
3 3

输出样例1

1

样例1说明

在所有可能的情况中,只有 $C_2^1 = 2$ 是2的倍数。

输入样例2

2 5
4 5
6 7

输出样例2

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$

本题为编程题,提交代码并运行通过测试点后判分。

正在加载题目数据…
已答 /
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析
提交记录
共 条 仅展示自由练习提交
正在加载提交记录…
讨论
发布
登录后参与讨论 立即登录
发布讨论需先绑定并验证手机号 去绑定手机号
加载中…
我
我
回复 @
回复 @
发送
还没有人讨论,来发表第一条吧