学习from:https://godweiyang.com/2018/03/12/concrete-math-3/
1.求和因子法
比如有anTn=bnTn-1+cn求解Tn
设一个求和因子sn=(a1a2…an-1)/(b2b3*…bn)
(这个设的东西是要恰好能使snbn=an-1sn-1的)
左右同乘发现就能表达了:
snanTn=s0a0T0+sigma(i=1~n)sici
得Tn=1/(snan)(s0a0T0+sigma(i=1~n)si*ci)
例题见上面大佬博客
2.成套方法 (名字很奇怪,个人理解就是特殊值…)
比如对于最简单的隔两个杀一个的约瑟夫问题,扩展其递归式得到
f(1)=a,f(2n)=2f(n)-b,f(2n+1)=2f(n)+c
现在想让你求解f(n)的表达式
可以设f(n)=A(n)a+B(n)b+C(n)c
然后先假设f(n)=1,可得:
因为f(1)=a=1,得a=1
f(2n)=1,f(n)=1,得1=2-b,1=2+c
b=1,c=-1
这样就得到一个有关A,B,C的方程:A(n)+B(n)-C(n)=1
同理再代个f(n)=n,得到A(n)+C(n)=n
然后可以设一下a=1,b=0,c=0的情况,可以搞出A(n)=2^m,(A(n)恰小于等于n的最大2的幂次)
这样就能解A,B,C了。
基本就是对函数值取特殊值、对变量取特殊值得到系数的关系式求解。