Processing math: 100%

[BZOJ 3601]一个人的数论

danihao123 posted @ 2018年5月29日 14:35 in 题解 with tags BZOJ 伯努利数 莫比乌斯反演 狄利克雷卷积 , 750 阅读
转载请注明出处:http://danihao123.is-programmer.com/

本来想做JZPKIL的……但卡常太恶心了

上来先颓式子:

fd(n)=ni=1[(i,n)=1]id=ni=1idk|n,k|iμ(k)=k|nμ(k)nki=1(ik)d=k|nμ(k)kdhd(nd)=((μidk)hd)

其中hd表示指数为d时的等幂求和函数。然后我们可能会想,如果这个函数是积性函数,那么我们可以对质因数分解的每一种质因数都求一遍答案,而由于μ的存在(对于质数的幂pk的因数,只有1p的莫比乌斯函数值不为0),所以需要处理的情况只有两种。

不过很可惜,hd显然不是积性函数,所以最后的整个卷积也不是积性函数。但是我们注意到hd事一个d+1次多项式,所以我们可以把多项式每一项都当成单独的函数,然后每个单独函数卷出来都是一个积性函数。至于求多项式每一项的系数,用伯努利数即可。

代码:


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter