6569 - 分组选取(pick)

题目描述

有 a 张红色卡片和 b 张蓝色卡片,所有卡片的编号互不相同,同颜色的卡片也彼此不同。

你要选出恰好 k 张卡片,其中恰好 r 张为红色。

请计算有多少种选法,并输出方案数对 1000000007 取模的结果。选取顺序不影响方案;如果无法满足要求,输出 0。选出 0 张卡片时,空集视为一种选法。

输入

输入一行四个整数 a,b,k,r,依次表示红色卡片数、蓝色卡片数、选取总数、要求的红色卡片数。

输出

输出一行一个整数,表示符合要求的选法数量对 1000000007 取模的结果。

样例

输入

3 2 3 2

输出

6

输入

7 8 6 2

输出

1470
说明

样例 1 解释

把三张红卡分别记为 A,B,C,两张蓝卡记为 D,E。需要选出两张红卡和一张蓝卡,六种选择为:

方案选出的红色卡片选出的蓝色卡片
1A、BD
2A、BE
3A、CD
4A、CE
5B、CD
6B、CE

交换选择顺序不会产生新方案。

样例 2 解释

需要从七张红卡中选两张、八张蓝卡中选四张。不同颜色的选择可以任意搭配,共有 1470 种方案。

样例 3

见题目目录下的 pick/3.in 与 pick/3.ans。

该样例满足测试点 3,4 的约束条件。

样例 4

见题目目录下的 pick/4.in 与 pick/4.ans。

该样例满足测试点 3,4 的约束条件。

样例 5

见题目目录下的 pick/5.in 与 pick/5.ans。

该样例满足测试点 7\sim10 的约束条件。

数据范围

对于所有测试数据,保证:

  • 0\le a,b,1\le a+b\le2000;
  • 0\le k\le a+b,0\le r\le k。

输入不保证一定能够选出符合要求的卡片。

本题共 10 个测试点,每个测试点 10 分。

测试点编号a+b 的上界
1,220
3,4200
5,61000
7\sim102000

附件下载

pick.zip (0.80 KB)

标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 3
通过人数 3
金币数量 1 枚
难度 基础


上一题 下一题