#P11250. 手套配对(Glove Pairing)

0

手套配对(Glove Pairing)

手套配对(Glove Pairing)

题目描述

小杨有 nn 对不同的手套,每对手套由左右各一只组成。

小杨想知道从中取出 mm 只手套,mm 只手套恰好包含 kk 对手套的情况有多少种。

小杨认为两种取出的情况不同,当且仅当两种情况取出的手套中存在不同的手套(同一对手套的左右手也视为不同的手套)。

输入格式

本题单个测试点内有多组测试数据。

第一行包含一个正整数 tt,代表测试用例组数。

接下来是 tt 组测试用例。对于每组测试用例,一共一行。

第一行包含三个正整数 n,m,kn,m,k,代表手套数量,取出的手套数和目标对数。

输出格式

对于每组测试数据,输出一个整数,代表可能的情况数量对 109+710^9+7 取模的结果。

样例输入 #1

2
5 6 2
5 1 5

样例输出 #1

120
0

数据范围

子任务 占比 tt nn mm kk
11 30%30\% ≤5\leq 5 ≤1000\leq 1000 ≤3\le 3 =1=1
22 ≤5\leq 5 ≤10\leq 10 ≤5\leq 5
33 40%40\% ≤105\leq 10^5 ≤1000\leq 1000 ≤2000\leq 2000

对全部的测试数据,保证 $1 \leq t \leq 10^5,1 \leq n \leq 1000,1 \leq m \leq 2 \times n,1 \leq k \leq n$。

知识点与难度

本题涉及的知识点从属于 GESP 8级,难度(CF Rating):1400。


测试点分布

Subtask 分值 测试点编号 说明
0 10 1 样例
1 25 2~8 小规模 t≤5, n≤10, m≤20
2 30 9~16 中等规模 t≤1000, n≤1000
3 35 17~25 满规模 t=10^5, n≤1000 O(1) 查询测试

出处:原题链接