powerful number 求积性函数前缀和

看我又找到了什么好东西

定义

powerful number 的定义:每一个质因子次数都不为 1 的数。

powerful number 比较少, \(\le n\) 的数只有 \(O(\sqrt n)\) 个。

找到它们是很容易的:从小到大枚举质因子的次数即可枚举出所有 powerful number 。

用这些数的性质可以求某一些积性函数的前缀和。

例题

函数 \(F\) 满足 \(F(p^c)=p\) 且为积性函数,求 \(F\) 的前缀和。

发现函数 \(G(x)=x\) 在质数上的取值是和 \(F\) 一样的,并且也是积性函数,并且前缀和容易得到,所以令 \(H={F\over G}\) (除法为狄利克雷卷积的逆),可以得到 \(H\) 是积性函数,且 \(H(p)=0\)

所以 \(H\) 只在 powerful number 的位置是有值的。

既然 \(F=H*G\) ,所以有 \(\sum_{i=1}^{n} F(i)=\sum_{i j \leq n} H(i) G(j)=\sum_{i=1}^{n} H(i) \sum_{j=1}^{n / i} G(j)\) ,只需要考虑每个 powerful number 的贡献即可。

别的一些构造方法有 \(F(p)=1\Leftrightarrow G(x)=1,F(p)=p-1\Leftrightarrow G(x)=\varphi(x)\)

posted @ 2020-07-16 16:36  p_b_p_b  阅读(304)  评论(0编辑  收藏  举报