AT_tenka1_2014_final_d 高橋君
题目描述
当且仅当字符串 $S$ 满足以下条件时,称其为“高桥君”:
- $S$ 是仅由 `0` 和 `1` 组成的字符串。
- $S$ 的长度恰好为 $n$。
- $S$ 中包含的 `1` 的个数不超过 $k$。
请计算“高桥君”的个数,并输出其对 $1000000007$ 取模后的结果。
输入格式
输入通过标准输入给出,格式如下:
- 第 $1$ 行包含一个整数 $T\ (1 \leq T \leq 100000)$,表示测试用例的数量。
- 接下来的 $T$ 行,每行包含两个整数 $n$ 和 $k$,用空格隔开,表示每个测试用例的条件 $n_i,\ k_i\ (0 \leq k_i \leq n_i \leq 100000)$。
输出格式
对于每个测试用例,输出“高桥君”的个数对 $1000000007$ 取模后的结果,每个结果占一行。输出末尾需换行。
说明/提示
## 部分分
若能正确解决所有满足 $0 \leq k_i \leq n_i \leq 3000$ 的测试用例,可获得 $50$ 分。
若能正确解决所有测试用例,可再获得 $150$ 分。
对于每个测试用例,输出“高桥君”的个数对 $1000000007$ 取模后的结果,每个结果占一行。输出末尾需换行。
## 样例解释 1
当 $n=1$,$k=1$ 时,“高桥君”有 `0`、`1` 共 $2$ 个。当 $n=3$,$k=2$ 时,“高桥君”有 `000`、`001`、`010`、`011`、`100`、`101`、`110` 共 $7$ 个。注意在数值较大时,需要输出对 $1000000007$ 取模的结果。
由 ChatGPT 4.1 翻译