1.一个结论
记f(n)=∑ni=1[ni],则有:f(n)=∑ni=1d(i)。其中d(n)=∑d|n1
这个结论是显然的。
2.杜教筛的一步换元
1=∑i=1n∑d|nϕ(d)=[∑i=1n∑d|n,d<nϕ(d)]+∑i=1nϕ(i)=[∑k=fracid=2n∑k|iϕ(ik)]+S(n)=[∑k=2n∑i=1[nk]ϕ(i)]+S(n)=[∑k=2nS([nk])]+S(n)
因此有S(n)=1−∑nk=2S([nk])
这样预处理前O(n23) 个S(n)即可。复杂度O(n23)。
3.可以在O(nlgn) 时间内求出任意两个函数的卷积,显然。
4.考虑一种情况:求(n<=m):
∑i=1n∑j=1mF(gcd(i,j))
=∑d=1nF(d)∑i=1[nd]∑j=1[md]∑e|gcd(i,j)μ(e)
=∑d=1nF(d)∑e=1[nd]μ(e)[nde][mde]
=∑T=de=1n[nT][mT]∑d|Tμ(d)F(Td)
=∑T=de=1n[nT][mT]G(T)
若F是积性函数那么G也将是积性函数,问题可以在O(n+qn√) 时间内解决。
否则可以在至少O(nlgn+qn√) 时间内解决。