自然数幂和(递推式k^2方法)

ni=1ikk<=2000n<=1018

f(k)=ni=1ik
大致思路是用 ni=1(i+1)k 与其用二项式展开化简后的式子,两边同时减去f(k)。类似等比数列的方法。

ni=1(i+1)kf(k)=(n+1)k1
同时
ni=1(i+1)kf(k)=k1j=0Cjkf(j)

联立二式 (n+1)k1=k1j=0Cjkf(j) ,将f(k-1)单独提出,发现等式另一侧只需要用到1..k-2的f.(这一步比较坑,用的是f(k)化简,求的是(f(k-1).)

f(k)=(n+1)k+11k1i=0Cik+1f(i)k+1 .
然后我们就可以用 k2 的方法去解决这个问题了。当然组合数需要预处理。

你可能感兴趣的:(新内容,数论)