若 x = ∏ p k x=\prod p^k x=∏pk,则 f ( x ) = 2 ∑ k f(x)=2^{\sum k} f(x)=2∑k,求 ∑ i = 1 n f ( i ) \sum_{i=1}^nf(i) ∑i=1nf(i)。
n < = 1 e 14 n<=1e14 n<=1e14
Solution
首先 f ( x ) f(x) f(x)是一个积性函数,我们考虑将 f f f卷两次 μ \mu μ。
u = ( f ∗ μ ) ∗ μ u=(f*\mu)*\mu u=(f∗μ)∗μ(狄利克雷卷积),展开后不难发现 u u u只在powerful number处有值,显然 u u u是一个积性函数,根据这题的条件算出 u ( p k ) = 2 k − 2 ( k ≥ 2 ) u(p^k)=2^{k-2}(k\ge2) u(pk)=2k−2(k≥2)
那么答案就是 ∑ i = 1 n u ( i ) ∑ a , b [ i a b ≤ n ] = ∑ i = 1 n u ( i ) ∑ j = 1 n / i d ( j ) \sum_{i=1}^nu(i)\sum_{a,b}[iab\le n]=\sum_{i=1}^nu(i)\sum_{j=1}^{n/i}d(j) ∑i=1nu(i)∑a,b[iab≤n]=∑i=1nu(i)∑j=1n/id(j), d ( i ) d(i) d(i)为 i i i的约数个数。
∑ i = 1 m d ( i ) = ∑ i = 1 m m i \sum_{i=1}^{m}d(i)=\sum_{i=1}^{m}\frac{m}{i} ∑i=1md(i)=∑i=1mim,可以 n \sqrt n n算出。
powerful number可以表示成 a 2 b 3 a^2b^3 a2b3,不难算出最多有 n \sqrt n n个,暴力枚举即可。
由于是根号套根号,积分后可以算出时间复杂度为 n l o g n \sqrt n\ log\sqrt n nlogn
注意卡常,我们在计算约数个数的时候,由于对称性可以这样算: 2 ( ∑ i = 1 n n i ) − ( n ) 2 2(\sum_{i=1}^{\sqrt n}\frac{n}{i})-(\sqrt n)^2 2(∑i=1nin)−(n)2,相比整除分块少了4倍的常数。