莫比乌斯反演与积性函数求和筛法中的一些细节
枚举除法:
1.(leftlfloorfrac{n}{i}
ight
floor) 只有(Oleft(sqrt{n}
ight)) 种取值。
2.对于 (i) , (leftlfloorfrac{n}{leftlfloorfrac{n}{i}
ight
floor}
ight
floor) 是与 (i) 被 (n) 除并下取整取值相同的一段区间的右端点。
3.一个很有用的性质:(leftlfloorfrac{n}{ab}
ight
floor=leftlfloorfrac{leftlfloorfrac{n}{a}
ight
floor}{b}
ight
floor=leftlfloorfrac{leftlfloorfrac{n}{b}
ight
floor}{a}
ight
floor)
应用:
求(mu)(莫比乌斯函数)的前缀和:(S(n) = 1 - sum_{i=2}^n S(lfloor frac{n}{i}
floor))。
求(varphi)(欧拉函数)的前缀和:(S(n) = frac{n(n+1)}{2} - sum_{i=2}^n S(lfloor frac{n}{i}
floor))。
还有求各种积性函数的前缀和....
求这些积性函数的前缀和都可以使用杜教筛和洲阁筛。前者 (O(n^{2/3})) 和后者 (O(frac{n^{3/4}}{logn})) ,一般情况下,洲阁筛的常数和复杂度都更加优秀。但现在好像有种比洲阁筛更优秀一点的筛法。(https://post.icpc-camp.org/d/782-spoj-divcnt3/2)(可能要科学上网...)
在这类问题中我们一般可以用线性筛预处理前 (O(n^{2/3}))左右可以使复杂度更优秀一些,一般会使用记忆化搜索和哈希表,map也可以代替哈希表。
原文地址:https://www.cnblogs.com/LzyRapx/p/8463509.html