普通生成函数 基础 例 1
如果有任何错误欢迎指出!!!/bx/bx/bx
前置知识
你可能需要了解一些生成函数基础。应该可以先看,看不懂再去学。
至少需要知道最基础的转封闭形式:\(1 + x + x^2 + x^3 + \dots = \frac{1}{1 - x}\) 和 \(1 + ax + (ax)^2 + (ax)^3 + \dots = \frac{1}{1 - ax}\)。
约定
\(F\) 表示函数,\(f\) 表示一个生成函数(一个拥有无限项的多项式?)。
\([x^i]f\) 表示多项式 \(f\) 的 \(x^i\) 的系数。
函数 \(\to\) 普通生成函数封闭形式
如果有这样一个函数(这个函数是怎么来的不重要)
\(G(i)\) 是什么呢,是长为 \(i\) 的合法置换环的个数:
- 合法置换环:只有一个置换环且是由从 \(1\) 升序到 \(n\) 再从 \(n\) 降序到 \(1\) 的两条链构成的。(是什么意思也不重要,就是对于位置连续的置换环的限制)
如果我们要求 \(F(n)\) 为长为 \(n\) 的序列满足:
- 由合法置换环构成(此处是由 \(mn\to mx, mx\to mn\) 的两条链构成的)
- 每个置换环都是序列上连续的一段区间。
那么 \(F(n) = \sum\limits_{i = 1}^{n}F(n - i)G(i), F(0) = 1\)。
那么写出生成函数 \(g = \sum\limits_{i = 0}G(i)x^i = x + \sum\limits_{i = 2}2^{i - 2}x^i = x + x^2\sum\limits_{i = 0}(2x)^i = x + x^2\frac{1}{1 - 2x} = \frac{x^2 + x(1 - 2x)}{1 - 2x} = \frac{x - x^2}{1 - 2x}\)。
然后考虑一个合法排列相当于若干个合法置换环拼接起来,有 \(f = \sum\limits_{i = 0}^{n} g^i\),即枚举由几个置换环拼接而成。那么 \(f = \frac{1}{1 - g} = \frac{1 - 2x}{1 - 3x + x^2}\)。
普通生成函数封闭形式 \(\to\) 递推方程
这里我们需要求出 \([x^n]f\) 即为答案,那么这里怎么求呢?
我们考虑设 \(f = a_0 + a_1x + a_2x^2 +\dots\)(其中实际上有 \(a_i = G(i)\))
对于 \(f\),\(f = \frac{1 - 2x}{1 - 3x + x^2}\) 等价于 \((1 - 3x + x^2)f = (1 - 2x) = t\),左侧的 \(=a_0 + (-3a_0 + a_1)x + (a_2 + -3a_1 + a_0)x^2 + \dots\),所以我们其实得到了关于 \(a\) 的方程组。
有 \(a_0 = 1, -3a_0 + a_1 = -2\),
还发现对于 \(i\ge 2\),有 \([x^i](1 - 2x) = 0\),且 \([x^i]\ ((1 - 3x + x^2)f) = 1(a_ix^i) + (-3x)(a_{i - 1}x^{i - 1}) + x^2(a_{i - 2}x^{i - 2}) = (a_i -3a_{i - 1} + a_{i - 2})x^i = [x^i](1 - 2x) = 0\)。
于是我们实际上得到了关于 \(F(i)\) 的递推式,在本问题中 \(F(0) = F(1) = 1, F(i) = 3F(i - 1) - F(i - 2)(i\ge 2)\)
总结
对于无穷级数 \(f = \frac{c}{d}\)(其中 \(c, d\) 是整式?),可以得到 \(cf = d\),设 \(f = a_0 + a_1x + a_2x^2\dots\),对于比较大的 \([x_n]f\) 是同一个递推式且可以解方程求出,比较大的定义是\(\ge c, d\) 中次数最高的次数,\(\ge len(c)\) 是显然的,对于要求 \(\ge len(d)\),是因为此时才都是 \(= 0\)。
至此,我们复习(学习)了在某些情况下通过普通生成函数封闭形式反推出递推方程的方式。还略微复习了函数化为普通生成函数的方式。
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号