luogu 2000
一道生成函数例题
如果对生成函数的知识不太了解,看这里
下面认为你已经了解了生成函数的内容
那么看见这种问题直接上生成函数嘛!
直接构造...10个生成函数
福利时间:这10个生成函数如下:
$F(x)=1+x^{6}+x^{12}+...=\frac{1}{1-x^{6}}$
$F(x)=1+x+x^{2}+...+x^{9}=\frac{1-x^{10}}{1-x}$
$F(x)=1+x+...+x^{5}=\frac{1-x^{6}}{1-x}$
$F(x)=1+x^{4}+x^{8}+...=\frac{1}{1-x^{4}}$
$F(x)=1+x+...+x^{7}=\frac{1-x^{8}}{1-x}$
$F(x)=1+x^{2}+....=\frac{1}{1-x^{2}}$
$F(x)=1+x=\frac{1-x^{2}}{1-x}$
$F(x)=1+x^{8}+...=\frac{1}{1-x^{8}}$
$F(x)=1+x^{10}+...=\frac{1}{1-x^{10}}$
$F(x)=1+x+x^{2}+x^{3}=\frac{1-x^{4}}{1-x}$
(打公式好累)
那么...把这10个东西乘在一起...就可以了吧
不要担心项太多,可以发现大量的分子分母可以约分,因此直接约掉,最后结果是$\frac{1}{(1-x)^{5}}$
还记得开头那篇文章里提到的模型吗?
这个东西不就等价于$\sum_{i=0}^{∞}C_{i+5-1}^{5-1}x_{i}$
那么题中所求的不就是$i=n$时的系数嘛!
最后答案即为$C_{n+4}^{4}$
可是...$n$好大呀
FFT?NTT?高精度压位?
我选择python
所以就有了这段两行的代码
n=int(input()) print((n+1)*(n+2)*(n+3)*(n+4)/24)