zoukankan      html  css  js  c++  java
  • Min_25筛

    有(没)什么用?

    求解积性函数 (F) 的前缀和

    [sum_{i=1}^{n}F(i) ]

    做法

    首先假设 (F(i)=i^k)
    (P_i) 为从小到大的第 (j) 个质数
    (g(x,j))

    (g(x,j)=sum_{i=1}^{x}[i)为质数或最小质因子(> P_j]F(i))
    (g(x,0)) 不包括 (f(1)) 的贡献

    求解 (g)

    (P_j^2 > x),则不存在 (x) 以内的合数的最小质因子大于 (P_j)

    那么 (g(x,j)=g(x,j-1))

    否则,(P_j^2 le x),考虑从 (g(x,j-1)) 推过来

    显然 (g(x,j-1)) 中多了最小质因子为 (P_j) 的那些合数的贡献,设为 (R)

    设这些合数为 (tP_j),贡献即 (t^kP_j^k)

    要满足这些合数的最小质因子为 (P_j)(t) 要满足最小质因子 (ge P_j)

    提出 (P_j^k) ,所以 (R=(g(frac{x}{P_j},j-1)-)小于 (P_j) 的质数的贡献()P_j^k)

    也就是 (R=P_j^k(g(frac{x}{P_j},j-1)-g(P_{j-1}, j-1)))

    (因为 (P_{j-1}) 以内为质数或最小质因子 (> P_{j-1}) 的只有质数)

    总结一下就是

    [g(x, j) = egin{cases} g(x,j-1), P_j^2 > x\ g(x,j-1)-P_j^k(g(frac{x}{P_j},j-1)-g(P_{j-1}, j-1)), P_j^2 le x\ end{cases}\ ]

    求解前缀和

    (h(x)=sum_{i=2}^{x}[i) 为质数 (]F(i))

    假设 (a_x)(P_{a_x} le x) 的最大的数

    那么 (h(x) = g(x, a_{sqrt x}))

    再设 (S(n,j)=sum_{i=1}^{n}[i)的最小质因子(ge P_j]F(i))

    (S(n,0)) 不包括 (f(1)) 的贡献

    分成两个部分计算

    1. (i) 为质数,贡献即为 (h(n)-h(P_{j-1}))

    2. (i) 为合数:

    枚举最小质因子 (P_k) 及其的指数 (e) (这里的 (k)(F(i)=i^k) 不是一个)

    贡献为

    [sum_{kge j}sum_{e}^{P_k^{e+1} le n}(F(P_k^e)S(frac{n}{p_k^e},k+1)+F(P_k^{e+1})) ]

    首先积性函数的性质有前面的一部分

    [sum_{kge j}sum_{e=1}^{P_k^{e+1} le n}F(P_k^e)S(frac{n}{p_k^e},k+1) ]

    而这样就没有算到 (F(P_k^e)) 的贡献,加回来即可

    答案就是 (S(n,1)+F(1))

  • 相关阅读:
    软件测试的术语及解释总结
    测试工具
    数据库客户端连接
    应用程序发生错误怎么修改
    软件测试容易忽略的缺陷
    LR中错误解决方法
    LR结果分析2
    LR结果分析
    Hive
    zookeeper
  • 原文地址:https://www.cnblogs.com/cjoieryl/p/9403579.html
Copyright © 2011-2022 走看看