题目传送门

Solution

应该这个做法不是很常见吧。

我们设 \(f_{i,j}\) 表示前面 \(i\) 个数,选出的数和为 \(j\) 的贡献之和。因为我们有以下式子:

\[\sum_{i=a}^{b} \binom{i}{a}=\binom{b+1}{a+1}
\]

所以,我们可以得到转移式:

\[f_{i,j}=\sum_{k} f_{i-1,k}\times \binom{j-k+1}{a_i+1}
\]

然后,我们假设设:

\[F_i(x)=\sum_{j=1}^{\infty} \binom{j}{a_i+1}x^{j-1}
\]

那么,我们就可以看出实际上 \(\prod_{i=1}^{n} F_i(x)\) 就是 \(f_{n,1},f_{n,2},...,f_{n,\infty}\) 的普通型生成函数。

于是,我们只需要求出 \(F_i(x)\) 的式子就好了。

我们可以得到如下推导:

设 \(S=\sum_{i=1}^{\infty} \binom{i}{a}x^{i}\)

则有:

\[S=x^a\sum_{i=0}^{\infty} \binom{i+a}{i}x^i
\]
\[\Rightarrow S=x^a\sum_{i=0}^{\infty} \binom{-a-1}{i}(-x)^i
\]
\[\Rightarrow S=x^a(1-x)^{-a-1}=x^a\frac{1}{(1-x)^{a+1}}
\]

所以,我们可以得到:

\[F_i(x)=x^{a_i}\frac{1}{(1-x)^{a_i+1}}
\]

那么,我们设 \(s=\sum_{i=1}^{n} a_i\),那么我们就可以得到:

\[\prod_{i=1}^{n} F_i(x)=x^{s}\frac{1}{(1-x)^{s+n}}
\]

那么这个多项式的第 \(i\) 项的系数就是 \(\binom{i+n-1}{n+s-1}\)。

那么,答案就是:

\[\sum_{i=0}^{m} \binom{i+n-1}{n+s-1}
\]
\[=\binom{n+m}{n+s}
\]

关于 Binomial Coefficient is Fun的更多相关文章

  1. Binomial Coefficient(二项式系数)

    In mathematics, any of the positive integers that occurs as a coefficient in the binomial theorem is ...

  2. Solution -「ARC 110D」Binomial Coefficient is Fun

    \(\mathcal{Description}\)   Link.   给定非负整数序列 \(\{a_n\}\),设 \(\{b_n\}\) 是一个非负整数序列且 \(\sum_{i=1}^nb_i\ ...

  3. UVA - 10375 Choose and divide[唯一分解定理]

    UVA - 10375 Choose and divide Choose and divide Time Limit: 1000MS   Memory Limit: 65536K Total Subm ...

  4. Lucas定理

    Lucas' theorem In number theory, Lucas's theorem expresses the remainder of division of the binomial ...

  5. Conjugate prior relationships

    Conjugate prior relationships The following diagram summarizes conjugate prior relationships for a n ...

  6. java积累

    数组的使用 package javaDemo; import java.util.*; /** * * @author Administrator * @version 1.0 * * */ publ ...

  7. OI不得不知的那些数学定理

    Binomial theorem One can define\[{r \choose k}=\frac{r\,(r-1) \cdots (r-k+1)}{k!} =\frac{(r)_k}{k!}\ ...

  8. UVA10375 Choose and divide 质因数分解

    质因数分解: Choose and divide Time Limit: 3000MS   Memory Limit: Unknown   64bit IO Format: %lld & %l ...

  9. Codeforces/TopCoder/ProjectEuler/CodeChef 散题笔记 (持续更新)

    最近做到了一些有趣的散题,于是开个Blog记录一下吧… (如果有人想做这些题的话还是不要看题解吧…) 2017-03-16 PE 202 Laserbeam 题意:有一个正三角形的镜子屋,光线从$C$ ...

随机推荐

  1. 阿里云服务器上部署java项目(安装jdk,tomcat)

    安装JDK a.执行下面的yum指令安装,无线配置环境变量. 1.yum -y update #首先更新一下YUM源2.yum list Java* ---------#列出所有的JDK 3.yum ...

  2. 剑指 Offer 34. 二叉树中和为某一值的路径

    剑指 Offer 34. 二叉树中和为某一值的路径 输入一棵二叉树和一个整数,打印出二叉树中节点值的和为输入整数的所有路径.从树的根节点开始往下一直到叶节点所经过的节点形成一条路径. 示例: 给定如下 ...

  3. git01_常用命令

    git与github介绍 Git是什么 Git是一个开源的[分布式][版本控制系统],用于敏捷高效地处理任何或小或大的项目 版本控制器 CVS/SVN/Git SVN 客户端/服务器 GIT 客户端/ ...

  4. (4)ElasticSearch在linux环境中搭建集群

    1.概述 一个运行中的Elasticsearch实例称为一个节点(node),而集群是由一个或者多个拥有相同cluster.name配置的节点组成,它们共同承担数据和负载的压力.当有节点加入集群中或者 ...

  5. java 集合特性面试必备

    collection 集合体系 数据结构栈和队列栈结构 :先进后出队列结构 :先进先出 数据结构之数组和链表数组结构:查询快.增删慢队列结构 :查询慢.增删快 List集合概述有序集合(也称为序列), ...

  6. 计算机基础知识以及java JDK、JRE

    计算机 计算机(Computer)全称:电子计算机,是一种能够按照程序运行,自动.高速处理海量数据的现代化智能电子设备.由硬件和软件所组成,没有安装任何软件的计算机称为裸机.常见的形式有台式计算机.笔 ...

  7. JAVA安全基础之代理模式(二)

    JAVA安全基础之代理模式(二) 上篇讲到静态代理模式,这时候我们发现,一个代理类只能为一个类服务,如果需要代理的类很多,那么就需要编写大量的代理类,比较繁琐.所以就有了动态代理 动态代理 动态代理的 ...

  8. oracle报错注入的一些函数

    oracle 报错注入 select dbms_xmltranslations.extractxliff((select banner from sys.v_$version where rownum ...

  9. python-引用/模块

    导入文件,先从当前目录下找,找不到从环境变量中找 1.导入模块,实质是把制定的py文件执行一遍. 自己写的模块:要导入的文件在当前目录下的:form 文件夹.py文件名 import 函数名 标准模块 ...

  10. Android——ProgressBar(进度条)

    参考资料来源于菜鸟教程--学的不仅是技术,更是梦想! 学习! 1.常用属性讲解与基础实例 从官方文档,我们看到了这样一个类关系图: ProgressBar继承与View类,直接子类有AbsSeekBa ...