母函数详解(Generating function)
来源:互联网 发布:淘宝网店名字怎么取 编辑:程序博客网 时间:2024/06/01 08:33
母函数,顾名思义,就是母亲函数。那就说明在这个函数里面还有个儿子,即子函数。说白了,就是子函数可以看作是母函数的一个子集。
那么如何把这些子函数用一个母函数来表示呢?(通项公式)解决了这个问题,后面的问题就容易多了。
也可以理解为:母函数就是一个多项式前面的系数的一个整体的集合,子函数就是这个多项式中每一项前面的系数。
首先,先看这个多项式:
由此可以看出:
x2项的系数a1a2+a1a3+...+an-1an中包含n个元素中取2个元素的全体组合
同理:x3项的系数包含了从n个元素中取3个元素的全体组合
以此类推。
若令a1=a2=...an=1,则进一步得到
母函数定义:
对于序列a0,a1,a2...构造一函数:
称函数G(x)是序列a0,a1,a2...的母函数。
引用HDU的例题:
例1:若有1克、2克、3克、4克的砝码各一枚,能称出哪几种重量?各有几种可能方案?
如何解决这个问题呢?考虑构造母函数。
我们用x表示砝码,x的指数表示砝码的重量,则:
1个1克的砝码可以用函数1+x^1表示,
1个2克的砝码可以用函数1+x^2表示,
1个3克的砝码可以用函数1+x^3表示,
1个4克的砝码可以用函数1+x^4表示,
为什么1个3克的砝码用1+x^3来表示呢?1可以看成x^0,即质量为0的砝码,这样3克砝码的就有两种状态(不放x^0 或者 放x^3)。
几种砝码的组合可以称重的情况,可以用以上几个函数的乘积表示:
(1+x)(1+x2)(1+x3)(1+x4)
=(1+x+x^2+x^3)(1+x^3+x^4+x^7)
=1+x^1+x^2+2x^3+2x^4+2x^5+2x^6+2x^7+x^8+x^9+x^10
从上面的函数知道:可称出从1克到10克,系数便是方案数。
例如右端有2x^5 项,即称出5克的方案有2:5=3+2=4+1;同样,6=1+2+3=4+2;10=1+2+3+4。
故称出6克的方案有2,称出10克的方案有1。
例2:求用1分、2分、3分的邮票贴出不同数值的方案数:
注意~例1是一种一枚,而此题邮票是允许重复的,故母函数是:
以展开后的x4为例,其系数为4,即4拆分成1、2、3之和的拆分数为4。
即 :4=1+1+1+1=1+1+2=1+3=2+2
这里引出两个概念:“整数拆分”和“拆分数”
所谓整数拆分即把整数分解成若干整数的和(相当于把n个无区别的球放到n个无标志的盒子,盒子允许空,也允许放多于一个球)。
整数拆分成若干整数的和,办法不一,不同拆分法的总数叫做拆分数。
- 母函数详解(Generating function)
- 母函数(Generating function)详解
- 母函数(Generating function)详解
- 母函数(Generating function)详解
- 母函数(Generating function)详解
- 母函数(Generating function)详解
- 母函数(Generating function)详解
- 母函数(Generating function)详解
- 母函数(Generating function)详解
- 母函数(generating function)
- 母函数(Generating function)详解 — TankyWoo
- 母函数(Generating function)详解 — TankyWoo
- 母函数(Generating function)详解 — TankyWoo
- 母函数(Generating function)详解 — TankyWoo
- 母函数(Generating function)经典应用详解
- 母函数(Generating function)详解(转)
- 母函数(Generating function)详解 — TankyWoo
- 母函数(Generating function)详解(转)
- 关于C++和Objective-C混编
- 嵌入式c面试题
- android 实现圆角图片解决方案
- 可以无线共享网络的好玩意
- 慎用国产控件和开发库
- 母函数详解(Generating function)
- 环境变量的作用
- Oracle的锁表与解锁
- 二战经典电影
- 简单的链表
- Spring 事务管理高级应用难点剖析1
- 堆排序
- 支持农业 宁波提倡菜篮子基地进驻社区
- 把图片切成圆角代码