http://www.lydsy.com/JudgeOnline/problem.php?id=3028

好吧,这是我第一道生成函数的题目。

先搞出各种食物的生成函数:

汉堡:$1+x^2+x^4+...=\frac{1}{1-x^2}$

可乐:$1+x$

鸡腿:$1+x+x^2=\frac{1-x^3}{1-x}$

蜜桃多:$x+x^3+x^5+...=\frac{x}{1-x^2}$

鸡块:$1+x^4+x^8+...=\frac{1}{1-x^4}$

包子:$1+x+x^2+x^3=\frac{1-x^4}{1-x}$

土豆片炒肉:$1+x$

面包:$1+x^3+x^6...=\frac{1}{1-x^3}$

相乘得:$f(x)=\frac{x}{(1-x)^4}$

然后接下来有两种方法:

(1)广义二项式定理

$f(x)=\frac{x}{(1-x)^4}$

$=x(1-x)^{-4}$

$=x\sum\limits_{k=0}^{\infty }C_{4+k-1}^{k}x^k$

$=x\sum\limits_{k=0}^{\infty }C_{k+3}^{3}x^k$

所以$x^n$的系数为$C_{n-1+3}^{3}=C_{n+2}^{3}$

(2)麦克劳林级数展开式

我们有如下定理:

$$f(x)=\sum\limits_{n=0}^{\infty }f^{(n)}(0)\frac{x^n}{n!}$$

$$其中f^{(n)}(x)是f(x)的n阶导数$$

回到本题

$f^{(n)}(x)=[x(1-x)^{-4}]^{(n)}$

$=\sum\limits_{k=0}^{n}C_{n}^{k}x^{(k)}[(1-x)^{-4}]^{(n-k)}$

$易知当k>1时,x^{(k)}=0,所以$

$=C_{n}^{0}x^{(0)}[(1-x)^{-4}]^{(n)}+C_{n}^{1}x^{(1)}[(1-x)^{-4}]^{(n-1)}$

$=xC_{-4}^{n}n!(1-x)^{-4-n}+nC_{-4}^{n-1}(n-1)!(1-x)^{-4-n+1}$

$易知$

$C_{-4}^{n}=\frac{(-4)\times(-5)\times...\times(-4-n+1)}{n!}=\frac{(-1)^n4\times5\times...\times(n+3)}{n!}=(-1)^nC_{n+3}^{n}$

$C_{-4}^{n-1}=(-1)^{n-1}C_{n+2}^{n-1}$

$所以$

$=x(-1)^nC_{n+3}^{n}n!(1-x)^{-4-n}+n(-1)^{n-1}C_{n+2}^{n-1}(n-1)!(1-x)^{-4-n+1}$

$=\frac{(n+3)!}{3!}x(x-1)^{-n-4}+\frac{n(n+2)!}{3!}(x-1)^{-n-3}$

$所以x^n前的系数为\frac{f^{(n)}(0)}{n!}=C_{n+2}^{3}$

bzoj3028食物的更多相关文章

  1. BZOJ3028 食物 (生成函数)

    首先 1+x+x^2+x^3+...+x^∞=1/(1-x) 对于题目中的几种食物写出生成函数 (对于a*x^b , a表示方案数 x表示食物,b表示该种食物的个数) f(1)=1+x^2+x^4+. ...

  2. BZOJ3028食物——生成函数+泰勒展开

    题目描述 明明这次又要出去旅游了,和上次不同的是,他这次要去宇宙探险!我们暂且不讨论他有多么NC,他又幻想了他应 该带一些什么东西.理所当然的,你当然要帮他计算携带N件物品的方案数.他这次又准备带一些 ...

  3. BZOJ3028 食物(生成函数)

    显然构造出生成函数:则有f(x)=(1+x2+x4+……)·(1+x)·(1+x+x2)·(x+x3+x5+……)·(1+x4+x8+……)·(1+x+x2+x3)·(1+x)·(1+x3+x6+…… ...

  4. 2018.12.30 bzoj3028: 食物(生成函数)

    传送门 生成函数模板题. 我们直接把每种食物的生成函数列出来: 承德汉堡:1+x2+x4+...=11−x21+x^2+x^4+...=\frac 1{1-x^2}1+x2+x4+...=1−x21​ ...

  5. BZOJ3028 食物 和 LOJ6261 一个人的高三楼

    总结一下广义二项式定理. 食物 明明这次又要出去旅游了,和上次不同的是,他这次要去宇宙探险!我们暂且不讨论他有多么NC,他又幻想了他应该带一些什么东西.理所当然的,你当然要帮他计算携带N件物品的方案数 ...

  6. bzoj3028食物 关于(1+x+x2+x3+x4+...)^k的第i项系数就是c(i+k−1,k−1)的证明

    关于(1+x+x2+x3+x4+...)^k的第i项系数就是c(i+k−1,k−1)的证明对于第i项,假设为5x^5=x^0*x^5x^5=x^1*x^4x^5=x^2*x^3........也就是说 ...

  7. BZOJ3028: 食物

    题目:http://www.lydsy.com/JudgeOnline/problem.php?id=3028 题解:列出母函数乘起来化简之后再展开,用插板法即可. 代码: #include<c ...

  8. BZOJ3028: 食物(生成函数)

    题意 链接 Sol 生成函数入门题. 对每个物品分别列一下,化到最后是\(\frac{x}{(1-x)^4}\) 根据广义二项式定理,最后答案是\(C_{(N - 1) + 4 - 1}^{4-1} ...

  9. 母函数入门笔记(施工中…

    定义:对于一个数列,它的母函数(即生成函数)为   为了对这个准确求值,我们设    举一个简单的例子 例1 对于数列 他的生成函数为 ,那么应用一下等比数列求和公式 这里由于 所以当时 那么   例 ...

随机推荐

  1. 工作于内存和文件之间的页缓存, Page Cache, the Affair Between Memory and Files

    原文作者:Gustavo Duarte 原文地址:http://duartes.org/gustavo/blog/post/what-your-computer-does-while-you-wait ...

  2. linux安装tomcat(转载:http://blog.csdn.net/zhuihunmiling/article/details/8977387)

    在安装Tomcat之前需要安装j2sdk(Java 2 Software Development Kit),也就是JDK 1.安装JDK完毕. 2.安装Tomcat 1)下载apache-tomcat ...

  3. Java基础知识强化之集合框架笔记06:Collection集合存储自定义对象并遍历的案例

    1.练习:用集合存储5个学生对象,并把学生对象进行遍历. 分析: (1)创建学生类(2)创建集合对象(3)创建学生对象(4)把学生添加到集合(5)把集合转成数组(6)遍历数组 2. 代码示例: Stu ...

  4. TCP/IP协议原理与应用笔记07:HTTP、TCP/IP与socket区别

    1. TCP/IP协议与HTTP协议区别:      HTTP 超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议.所有的WWW文件 ...

  5. 我也要这样写define、、

    今天在TCO1B看到这位大神的代码,简直醉了,当需要手速的时候可以考虑使用一下.. #define V(x) vector<x > #define vs V(string) #define ...

  6. (转)PHP自定义遍历目录下所有文件dir(),readdir()函数

    方法一:使用dir()遍历目录 dir()函数,成功时返回Directory类实例 PHP dir() 语法格式为: dir(directory);//directory为需要显示文件名的目录名称,可 ...

  7. 状态开关按钮(ToggleButton)及按钮(Swich)的使用

    状态开关按钮(ToggleButton)和开关(Switch)也是由Button派生出来的,因此它们本质上都是按钮,Button支持的各种属性.方法也适用于ToggleButton和Switch.从功 ...

  8. List、Set、Map的使用

    1.List(接口) List接口的特点: a.List接口可以存放任意数据,且在接口中,数据可以重复. b.List中提供了高效的插入和移除多个元素的方法. List常用的子类 a.ArrayLis ...

  9. 认识html文件基本结构

    html文件的结构:一个HTML文件是有自己固定的结构的. <html> <head>...</head> <body>...</body> ...

  10. hdu 2460 poj 3694 (双联通+LCA)

    在给出的两个点上加一条边,求剩下桥的数量,,不会LCA在线,就用了最普通的,先Tarjan双联通缩点,然后将缩完的图建成一棵树,树的所有边就是桥了,如果在任意两点间加一条边的话,那么从两点到最近公共祖 ...