• [Project Euler 530] GCD of Divisors


    Project Euler 530

    [f(n)=sum_{d vert n}(d,frac{n}{d})\ F(n)= sum_{i=1}^n{f(i)} ]

    (F(n),nleq 10^{15}, Q=1)

    sol:
    无法直接转化(f(n)),尝试暴力展开(f(i))后直接莫比乌斯反演转化(F(n ))

    [egin{aligned} F(n) &= sum_{i=1}^nsum_{dvert n}(d,frac{n}{d})\ &=sum_d{dsum_{i=1}^n{sum_{evert i}{[(e,frac{i}{e})=d]}}}\ &=sum_{d}dsum_{i=1}^{n/d^2}sum_{evert i}[(e,frac{i}{e})=1]\ &=sum_{d}dsum_{i=1}^{n/d^2}sum_{evert i}sum_{jvert e}sum_{jvert(i/e)}mu(e)\ &=sum_{d}sum_{j=1}^{n/d^2}dspace mu(j)sum_{i=1}^{n/d^2}sum_{evert i}[jvert e][jvert frac{i}{e}]\ &=sum_{d}sum_{j=1}^{n/d^2}dspacemu(j)sum_{i=1}^{n/d^2j^2}sigma_0(i) end{aligned} ]

    发现其实将(j)的上界扩展到(n)不会产生任何影响

    [F(n)=sum_{d}sum_{j=1}^{n}dspace mu(j)sum_{i=1}^{n/d^2j^2}sigma_0(i) ]

    考虑枚举(T=dj),设(S(n)=sum_{i=1}^nsigma_0(i)),发现(id)(mu)构成卷积。

    [F(n)=sum_{T=dj=1}^nphi(T)S(lfloorfrac{n}{T^2} floor) ]

    (d>sqrt n)(frac{n}{T^2})恒为0,因此缩小枚举(T)的上界为(sqrt n),同时(S(n))可以分块优化。

    [F(n)=sum_{T=dj=1}^{sqrt n}phi(T)S(lfloorfrac{n}{T ^2} floor) ]

    复杂度(sqrt n ln sqrt n) 反正是提答

  • 相关阅读:
    Redis
    cz_health_day13项目实战
    cz_health_day11
    cz_health_day10
    cz_health_day09
    cz_health_day08
    MySQL8管理系列之二:从5.5升级到8的问题处理
    MySQL8管理系列之一:Mysql 8.0以后版本的安装
    MySQL 5.5.x 数据库导入到 8.0.x 服务器
    修改Mysql 8.0版本的默认数据库目录
  • 原文地址:https://www.cnblogs.com/cjc030205/p/11638104.html
Copyright © 2020-2023  润新知