生成函数(母函数思路)
无限枚一元,五元,十元硬币,问凑成X元的方案
P=Z^0+Z^1+Z^2+Z^3...
n=(z^0+z^5+z^10...)p
拆括号后a[k]*z^k中系数a[k]就是凑出k元的方案数
例如3*z^10项说明有三种方法凑出十元(未计十元币)
d=(z^0+z^10+z^20...)n
现在要快速得到D中各项z次方前面的系数
对P分析
p=1(1-z^n)/(1-z)=1/(1-z)
p-pz=1
p[n]=p[n-1]+[n=0]
[n=0]表示N等于零成立返回1,否则返回0
得出递推式
n[n]=n[n-5]+p[n]
d[n]=d[n-10]+n[n]
具体思想可以参考组合数学知识