博客
关于我
[bzoj2818][莫比乌斯反演]Gcd
阅读量:91 次
发布时间:2019-02-26

本文共 1438 字,大约阅读时间需要 4 分钟。

??????????????????????(x, y)???1 ? x, y ? N?Gcd(x, y)??????????????????????????

????

  • ???????????????????N??????
  • ?????????????????????????????????
  • ???????????p????????????????????
    • ??M = floor(N / p)?
    • ????Gcd(a, b) = 1????????a?b?M?????
    • ???????????????????????
  • ????

    #include 
    #include
    #include
    #include
    #include
    using namespace std;
    typedef long long LL;
    // ??????
    vector
    prime; bool is_prime[11000000 + 1]; void sieve() { is_prime[0] = is_prime[1] = false; for (int i = 2; i <= 11000000; ++i) { if (is_prime[i]) { prime.push_back(i); } for (int j = i; j <= 11000000; j += i) { is_prime[j] = false; } } } // ????????mu int mu[11000000 + 1]; void mobius_sieve() { mu[1] = 1; for (int i = 2; i <= 11000000; ++i) { if (is_prime[i]) { for (int j = i; j <= 11000000; j += i) { mu[j] *= -1; } int k = i * i; for (int j = k; j <= 11000000; j += k) { mu[j] = 0; } } } } int main() { int N; scanf("%d", &N); sieve(); mobius_sieve(); LL ans = 0; for (int p : prime) { if (p > N) break; int M = N / p; if (M == 0) continue; LL sum = 0; for (int d = 1; d <= M; ++d) { if (mu[d] == 0) continue; int k = M / d; sum += mu[d] * (k * k); } ans += sum; } printf("%lld\n", ans); return 0; }

    ????

  • ??????????????????????????????
  • ?????????????????????????????????
  • ???????????p???M = floor(N / p)??????????????????????????????
  • ???????????????????????????????

    转载地址:http://wjmu.baihongyu.com/

    你可能感兴趣的文章
    Objective-C实现OCR文字识别(附完整源码)
    查看>>
    Objective-C实现odd even sort奇偶排序算法(附完整源码)
    查看>>
    Objective-C实现ohms law欧姆定律算法(附完整源码)
    查看>>
    Objective-C实现P-Series algorithm算法(附完整源码)
    查看>>
    Objective-C实现page rank算法(附完整源码)
    查看>>
    Objective-C实现PageRank算法(附完整源码)
    查看>>
    Objective-C实现pancake sort煎饼排序算法(附完整源码)
    查看>>
    Objective-C实现pascalTriangle帕斯卡三角形算法(附完整源码)
    查看>>
    Objective-C实现password generator复杂密码生成器算法(附完整源码)
    查看>>
    Objective-C实现patience sort耐心排序算法(附完整源码)
    查看>>
    Objective-C实现PCA(附完整源码)
    查看>>
    Objective-C实现perceptron算法(附完整源码)
    查看>>
    Objective-C实现perfect cube完全立方数算法(附完整源码)
    查看>>
    Objective-C实现perfect number完全数算法(附完整源码)
    查看>>
    Objective-C实现perfect square完全平方数算法(附完整源码)
    查看>>
    Objective-C实现permutate Without Repetitions无重复排列算法(附完整源码)
    查看>>
    Objective-C实现PNG图片格式转换BMP图片格式(附完整源码)
    查看>>
    Objective-C实现pollard rho大数分解算法(附完整源码)
    查看>>
    Objective-C实现Polynomials多项式算法 (附完整源码)
    查看>>
    Objective-C实现porta密码算法(附完整源码)
    查看>>