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)\) 。