拯救世界题解+组合类生成函数复习

昨天菇菇学长爆讲了一波生成函数然后啥也没听懂
今天一看这道题的题解,终于知道学长在讲什么了
前置芝士,四则运算,多项式,普通生成函数(了解)
首先定义一些东西:
\(\mathcal{A}\)表示一个组合类
\(A\)表示\(\mathcal{A}\)表示该组合类的生成函数,\(A(x)=\sum{A_i*x^i}\)(系数为排列数(不是指排列数,要根据题意转化))
这什么意思呢,举个例子“我现在有一个大头,两个蜜蜂,我想组合出一个大头蜜蜂”,这就是一个经典乘法原理的应用
这里“大头”,和“蜜蜂”都是组合类,根据生成函数,我们可以将他们“生成”一个函数
由于玄学,他们也满足乘法原理(或者说笛卡尔积),于是乘起来(为何如此草率!)
根据题意我们列十个函数(为了好看好理解不用\(\sum\)了)

\[1+x^6+x^{12}+x^{18}+……=\frac{1}{1-x^6} \]

\[1+x+x^2+……+x^9=\frac{1-x^{10}}{1-x} \]

\[1+x+……+x^5=\frac{1-x^6}{1-x} \]

\[1+x^4+x^8+x^{12}+……=\frac{1}{1-x^4} \]

\[1+x+……+x^7=\frac{1-x^8}{1-x} \]

\[1+x^2+x^4+x^6+……=\frac{1}{1-x^2} \]

\[x^0+x^1=1+x \]

\[1+x^8+x^{16}+x^{24}+x^{32}+x^{40}+……=\frac{1}{1-x^8} \]

\[1+x^{10}+x^{20}+x^{30}+x^{40}+……=\frac{1}{1-x^{10}} \]

\[1+x+x^2+x^3=\frac{1-x^4}{1-x} \]

用乘法原理乘起来就是\(C_{4+n}^{4}\)
什么,你让我用\(FFT\)
我们还是\(ruby\)

n=gets.to_i
print (n + 1)*(n + 2)*(n + 3)*(n + 4)/24
posted @ 2021-01-28 14:46  蒟蒻丁  阅读(134)  评论(0编辑  收藏  举报