题解 P6156 【简单题】

[ans=sum_{i=1}^nsum_{j=1}^n(i+j)^kf(gcd(i,j))gcd(i,j) ]

[egin{aligned} ans & =sum_{i=1}^nsum_{j=1}^n(i+j)^kf(gcd(i,j))gcd(i,j) \ & =sum_{t=1}^nf(t)t^{k+1}sum_{i=1}^{leftlfloordfrac{n}{t} ight floor}sum_{j=1}^{leftlfloordfrac{n}{t} ight floor}(i+j)^k[gcd(i,j)=1] \ & =sum_{t=1}^nf(t)t^{k+1}sum_{i=1}^{leftlfloordfrac{n}{t} ight floor}sum_{j=1}^{leftlfloordfrac{n}{t} ight floor}(i+j)^ksum_{d|gcd(i,j)}mu(d) \ & =sum_{t=1}^nf(t)t^{k+1}sum_{d=1}^{leftlfloordfrac{n}{t} ight floor}mu(d)d^ksum_{i=1}^{leftlfloordfrac{n}{dt} ight floor}sum_{j=1}^{leftlfloordfrac{n}{dt} ight floor}(i+j)^k end{aligned} ]

我们现在设

[sum(D)=sum_{i=1}^{D}sum_{j=1}^D(i+j)^k ]

所以

[egin{aligned} ans & =sum_{t=1}^nf(t)t^{k+1}sum_{d=1}^{leftlfloordfrac{n}{t} ight floor}mu(d)sum(leftlfloordfrac{n}{dt} ight floor) \ & =sum_{D=1}^nsum(leftlfloordfrac{n}{D} ight floor)sum_{t|D}f(t)t^{k+1}mu(frac{D}{t})(frac{D}{t})^k \ & =sum_{D=1}^nsum(leftlfloordfrac{n}{D} ight floor)D^ksum_{t|D}f(t)tmu(frac{D}{t}) end{aligned} ]

我们又设

[g(D)=sum_{t|D}f(t)tmu(frac{D}{t}) ]

易知,g为积性函数

所以

[ans=sum_{D=1}^nsum(leftlfloordfrac{n}{D} ight floor)D^kg(D) ]

啊,这

我们先来考虑sum该怎么求

[egin{aligned} sum(n) & =sum_{i=1}^nsum_{j=1}^n(i+j)^k \ & =sum_{d=2}^{2cdot n}d^k imes leftlfloordfrac{d}{2} ight floor imes 2 end{aligned} ]

这个可以递推?


然后我们看g

[g(n)=sum_{t|n}f(t)tmu(frac{n}{t}) ]

线筛

原文地址:https://www.cnblogs.com/starseven/p/13560227.html