[学习笔记]母函数

本文探讨了母函数的概念,包括定义、闭形式及基础操作,并通过三个实例——wyx旅游问题、求偶数个5的十进制数个数、遗忘的集合问题——深入阐述了母函数在解决实际问题中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

母函数的性质

1、定义

母函数是用于对应一个无穷序列的幂级数,一般来说母函数有形式:
G ( x ) = g 0 + g 1 x + g 2 + x 2 + . . . = ∑ i = 0 ∞ g i x i G(x)=g_0+g_1x+g_2+x^2+...=\sum_{i=0}^\infty g_ix^i G(x)=g0+g1x+g2+x2+...=i=0gixi = < g 0 , g 1 , g 2 . . . . . . > =<g_0,g_1,g_2......> =<g0,g1,g2......>2、闭形式

举一个例子,有一个生成函数是 < 1 , 1 , 1... > <1,1,1...> <1,1,1...>,我们尝试对它求和:
< 1 , 1 , 1... > = 1 − x ∞ 1 − x = 1 1 − x <1,1,1...>=\frac{1-x^{\infty}}{1-x}=\frac{1}{1-x} <1,1,1...>=1x1x=1x1最后一步是因为在 x ∈ ( 0 , 1 ) x\in(0,1) x(0,1)时, x ∞ x^\infty x趋近于 0 0 0,那我们就可以得到一个简洁的表达方法,这就是闭形式

3、基础操作

  • 放缩,即 < c g 0 , c g 1 , c g 2 . . . . > = c G ( x ) <cg_0,cg_1,cg_2....>=cG(x) <cg0,cg1,cg2....>=cG(x)
  • 加减法,即 < f 0 ± g 0 , f 1 ± g 1 , f 2 ± g 2 . . . . > = F ( x ) ± G ( x ) <f_0\pm g_0,f_1\pm g_1,f_2\pm g_2....>=F(x)\pm G(x) <f0±g0,f1±g1,f2±g2....>=F(x)±G(x)
  • 求导,举一个例子,对于 G ( x ) = 1 + x + x 2 . . . . = 1 1 − x G(x)=1+x+x^2....=\frac{1}{1-x} G(x)=1+x+x2....=1x1求导, G ′ ( x ) = 1 + 2 x + 3 x 2 . . . = 1 ( 1 − x ) 2 G'(x)=1+2x+3x^2...=\frac{1}{(1-x)^2} G(x)=1+2x+3x2...=(1x)21,这里利用到了对母函数求导等价于对它的闭形式求导。
  • 卷积,类比多项式的卷积,这个操作广泛运用于组合数学。

应用

[例一] wyx旅游

题目描述

小明出门旅游,需要带一些食物,包括薯片,巧克力,矿泉水,汉堡,牛奶和糖果。经过估计,他觉得带 n ≤ 1 0 100 n\leq 10^{100} n10100 件食物比较合适,但他还有一些癖好,问方案数:

  • 最多带1个汉堡
  • 巧克力的块数是5的倍数
  • 最多带4瓶矿泉水
  • 薯片的包数是一个偶数
  • 最多带3罐牛奶
  • 糖果的个数是4的倍数

解法

尝试把这些限制写成母函数的形式:

  • 汉堡, h ( x ) = 1 + x h(x)=1+x h(x)=1+x
  • 巧克力, c ( x ) = 1 + x 5 + x 10 . . . . . . = 1 1 − x 5 c(x)=1+x^5+x^{10}......=\frac{1}{1-x^5} c(x)=1+x5+x10......=1x51
  • 矿泉水, p ( x ) = 1 + x + x 2 + x 3 + x 4 = 1 − x 5 1 − x p(x)=1+x+x^2+x^3+x^4=\frac{1-x^5}{1-x} p(x)=1+x+x2+x3+x4=1x1x5
  • 薯片, w ( x ) = 1 + x 2 + x 4 . . . . . . = 1 1 − x 2 w(x)=1+x^2+x^4......=\frac{1}{1-x^2} w(x)=1+x2+x4......=1x21
  • 牛奶, m ( x ) = 1 + x 1 + x 2 + x 3 = 1 − x 4 1 − x m(x)=1+x^1+x^2+x^3=\frac{1-x^4}{1-x} m(x)=1+x1+x2+x3=1x1x4
  • 糖果, s ( x ) = 1 + x 4 + x 8 . . . . = 1 1 − x 4 s(x)=1+x^4+x^8....=\frac{1}{1-x^4} s(x)=1+x4+x8....=1x41

把这些多项式乘起来:
1 ( 1 − x ) 3 = < 1 , C 3 2 , C 4 2 . . . . . . > \frac{1}{(1-x)^3}=<1,C_3^2,C_4^2......> (1x)31=<1,C32,C42......>上式的得出本质上是用插板法解决的不定方程解的个数,所以答案就是 C n + 2 2 = n ( n + 1 ) / 2 C_{n+2}^2=n(n+1)/2 Cn+22=n(n+1)/2

[例二] 无名

n n n位十进制正数中出现偶数个 5 5 5的数的个数。

兄弟们,我们先来搞个 d p dp dp,设 a [ i ] a[i] a[i]为偶数个 5 5 5 i i i位十进制数, b [ i ] b[i] b[i]为奇数个 5 5 5 i i i位十进制数:
a i = 9 a i − 1 + b i − 1 a_i=9a_{i-1}+b_{i-1} ai=9ai1+bi1 b i = 9 b i − 1 + a i − 1 b_i=9b_{i-1}+a_{i-1} bi=9bi1+ai1兄弟们,我们把它写成母函数的形式:
A ( x ) = ∑ i = 0 + ∞ a i + 1 x i A(x)=\sum_{i=0}^{+\infty}a_{i+1}x^i A(x)=i=0+ai+1xi B ( x ) = ∑ i = 0 + ∞ b i + 1 x i B(x)=\sum_{i=0}^{+\infty}b_{i+1}x^i B(x)=i=0+bi+1xi兄弟们,我们优化的目的就是换一种简洁的表示出母函数(进而得到系数),观察转移方程,我们尝试消掉一些东西。

A ( x ) A(x) A(x)乘以 − 9 x -9x 9x B ( x ) B(x) B(x)乘以 − x -x x,然后我们把这两个和 A ( x ) A(x) A(x)等号两边相加(自己算),就能得到:
( 1 − 9 x ) A ( x ) − x B ( x ) = a 1 = 8 (1-9x)A(x)-xB(x)=a_1=8 (19x)A(x)xB(x)=a1=8同理:
( 1 − 9 x ) B ( x ) − x A ( x ) = b 1 = 1 (1-9x)B(x)-xA(x)=b_1=1 (19x)B(x)xA(x)=b1=1然后解一个方程就可以得到:
A ( x ) = − 71 x + 8 ( 1 − 8 x ) ( 1 − 10 x ) , B ( x ) = 1 − x ( 1 − 8 x ) ( 1 − 10 x ) A(x)=\frac{-71x+8}{(1-8x)(1-10x)},B(x)=\frac{1-x}{(1-8x)(1-10x)} A(x)=(18x)(110x)71x+8,B(x)=(18x)(110x)1x要把 A ( x ) A(x) A(x)再转化成无穷级数的形式,需要把它拆成两部分,用初中的待定系数法:
A ( x ) = ( 7 ( 1 − 8 x ) + 9 1 − 10 x ) / 2 A(x)=(\frac{7}{(1-8x)}+\frac{9}{1-10x})/2 A(x)=((18x)7+110x9)/2这里需要把闭形式转化成无穷级数,可以类比最简单的形式( ∑ x i = 1 1 − x \sum x^i=\frac{1}{1-x} xi=1x1),就可以得到:
2 A ( x ) = ∑ i = 0 + ∞ 7 × ( 8 x ) i + ∑ i = 0 + ∞ 9 × ( 10 x ) i 2A(x)=\sum_{i=0}^{+\infty}7\times (8x)^i+\sum_{i=0}^{+\infty}9\times (10x)^i 2A(x)=i=0+7×(8x)i+i=0+9×(10x)i系数(答案)就不难知道了:
a n = ( 7 × 8 n − 1 ) / 2 + ( 9 × 1 0 n − 1 ) / 2 a_n=(7\times 8^{n-1})/2+(9\times 10^{n-1})/2 an=(7×8n1)/2+(9×10n1)/2

[例三] 遗忘的集合

https://blog.csdn.net/C202044zxy/article/details/103714435

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值