题目传送门

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. 发布日志 - kratos v2.0.5 版本发布

    V2.0.5 Release Release v2.0.5 · go-kratos/kratos (github.com) 修复问题 proto errors when swagger api imp ...

  2. vue 之 后端返回空字符串用 null 和 “”以及 undefind 判断不到的问题

    原文: <!-- <span v-if="scope.row.buyer_credit_score != '' || scope.row.buyer_credit_score ! ...

  3. 作用域 作用域链 闭包 思想 JS/C++比较

    首先,我说的比较是指JS中这种思想/实现方式与C++编译原理中思想/实现方式的比较 参考链接:(比较易懂的介绍,我主要写个人理解) 作用域链: http://www.cnblogs.com/dolph ...

  4. MongoDB(1)- 入门介绍

    MongoDB 数据库 MongoDB 是一个文档数据库,旨在简化开发和扩展 MongoDB 中的记录是一个文档 Document,是由字段和值对组成的数据结构 MongoDB 文档类似于 JSON ...

  5. inet_aton和inet_ntoa

    3.1 inet_aton() int inet_aton(const char *cp, struct in_addr *inp); 参数说明: cp : IPv4点分十进制字符串,例如" ...

  6. redis跨实例迁移 & redis上云

    1)redis跨实例迁移--源实例db11迁移至目标实例db30 root@fe2e836e4470:/data# redis-cli -a pwd1 -n 11 keys \* |while rea ...

  7. pyRevit开发:如何创建轴网

    必看部分: Document获取: 必看文章 如何添加基本项目引用 基础部分: 创建轴网 基本思路: 首先添加引用 获取当前项目文档 创建轴网定位线 创建轴网 设置轴网名称 实现代码: import ...

  8. SpringMVC-初见

    目录 什么是SpringMVC? DispatcherServlet 第一个MVC程序 配置版 Maven可能存在资源过滤的问题 注解版 RestFul和控制器 实现Controller接口 使用注解 ...

  9. 硕盟type-c转接头HDMI+VGA+USB3.0+PD3.0四合一多功能扩展坞

    硕盟SM-T54是一款 TYPE C转HDMI+VGA+USB3.0+PD3.0四合一多功能扩展坞,支持四口同时使用,您可以将含有USB 3.1协议的电脑主机,通过此产品连接到具有HDMI或VGA的显 ...

  10. MySQL查询之内连接,外连接查询场景的区别与不同

    前言 我在写sql查询的时候,用的最多的就是where条件查询,这种查询也叫内连查询inner join,当然还有外连查询outer join,左外连接,右外连接查询,常用在多对多关系中,那他们区别和 ...