Powerful Number的定义是所有质因子的指数都大于111数,简单积一下发现只有O(n)O(\sqrt n)O(n)个。下面是它在求积性函数前缀和中的应用。
设我们要求积性函数f(n)f(n)f(n)的前缀和F(n)F(n)F(n),考虑我们能找到一个性质更好(前缀和易求)的积性函数g(n)g(n)g(n),满足对于质数ppp有g(p)=f(p)g(p)=f(p)g(p)=f(p)。我们考虑f/g=hf/g=hf/g=h,由于f,gf,gf,g都是积性函数,所以有f(1)=g(1)=1f(1)=g(1)=1f(1)=g(1)=1,又因为f(p)=g(p)×h(1)+g(1)×h(p)f(p)=g(p)\times h(1)+g(1)\times h(p)f(p)=g(p)×h(1)+g(1)×h(p),所以有h(1)=1,h(p)=0h(1)=1,h(p)=0h(1)=1,h(p)=0。又因为hhh也是积性函数,所以hhh只会在Powerful Number处有值,其余处都是000。(假设Powerful Number的集合为PN\mathbb{PN}PN)于是有,
F(n)=∑xy≤ng(x)h(y)=∑y∈PNh(y)G(⌊ny⌋)
F(n)=\sum_{xy\le n}g(x)h(y)=\sum_{y\in \mathbb{PN}}h(y)G(\lfloor \frac n y\rfloor )
F(n)=xy≤n∑g(x)h(y)=y∈PN∑h(y)G(⌊yn⌋)
于是在hhh的单点值好求,ggg的前缀和好求的情况下就可以很快地求出FFF了。
Powerful Number 学习笔记
最新推荐文章于 2025-06-14 12:49:02 发布
本文探讨了PowerfulNumber在积性函数前缀和计算中的应用。通过构造辅助函数g(n)和h(n),使得h(n)仅在PowerfulNumber处有值,从而简化了求解积性函数f(n)的前缀和F(n)的过程。

506

被折叠的 条评论
为什么被折叠?



