# 组合杂题

# 练习题

# ARC110D - Binomial Coefficient is Fun (opens new window)

提示

显然只有BiAiB_i\geq A_i才有意义,这时,将(BiAi)B_i\choose A_i看成是从BiB_i个球中选AiA_i个进行染色。

现在,对于某一种染色方案(也即我们计数的基本单元),我们染色后的B1,B2,,BnB_1,B_2,\dots,B_n个球一字排开。考虑到AiA_i有可能为00,我们在第ii组的最后再额外放上一个染色的球,以表示组与组之间的分隔。因为BiM\sum B_i\leq M,对于Bi<N+M\sum B_i<N+M的情形,我们不妨在最后补上N+MBiN+M-\sum B_i个球,这些球显然是没有染色的。

这样,对于每一种染色方案,我们都可以得到唯一确定的一个排列,而这个排列可以看成是在N+MN+M个球(包括NN个添加在每组末尾用于分隔的球)中选取N+AiN+\sum A_i个进行染色后得到的。

现在,反过来考虑。假设我们已经有了对N+MN+M个球中选取N+AiN+\sum A_i个进行染色后得到的一个排列。我们可以从最后一个染色的球开始,首先确定第NN组的范围,然后依次确定第N1,N2,,1N-1,N-2,\dots,1组的范围。从而,我们可以由这样一个排列得到唯一确定的一组{Bi}\{B_i\}的取值。显然,这一排列对应于这一组{Bi}\{B_i\}取值下的唯一确定的一种染色方案。

从而,我们说明了分组进行染色和对整体进行染色之间的一一映射关系,因此,这两种染色方法的方案总数应当是相等的。

所以,本题最后的答案就是(N+MN+Ai){N+M}\choose{N+\sum A_i}