• 题解 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}) ]

    线筛

  • 相关阅读:
    优先队列
    BFS和图的最短路径 279,127,126
    opencv常用函数
    图形图像概念
    缓存
    主板
    显卡
    cpu
    vs配置opencv(只需一次)
    附加依赖项、库目录、包含目录
  • 原文地址:https://www.cnblogs.com/starseven/p/13560227.html
Copyright © 2020-2023  润新知