zoukankan      html  css  js  c++  java
  • 莫比乌斯反演

    这里还是口胡,dalao和萌新请绕道。

    总体来说,就是$sum$来回导的问题。

    主要需要注意一点,那就是在交换$sum$时对于任意一个元素,枚举次数不能改变。

    最重要的式子:

    ${sum_{i=1}^{N}}{sum_{j=1}^{M}}varepsilon(gcd(i,j))$

    $={sum_{i=1}^{N}}{sum_{j=1}^{M}}{sum_{d|gcd(i,j)}}{mu (d)}$

    $={sum_{d=1}^{min(N,M)}}{sum_{d|i}^{N}}{sum_{d|j}^{M}}{mu(d)}$

    $={sum_{d=1}^{min(N,M)}}{mu(d)}{sum_{d|i}^{N}}1{sum_{d|j}^{M}}1$

    $={sum_{d=1}^{min(N,M)}}{mu(d)}{sum_{i=1}^{left lfloor {frac{N}{d}} ight floor}}1{sum_{j=1}^{leftlfloor{frac{M}{d}} ight floor}}1$

    $={sum_{d=1}^{min(N,M)}}{mu(d)}{leftlfloor{frac{N}{d}} ight floor}{leftlfloor{frac{M}{d}} ight floor}$

    第二个就是整除分块

    ${sum_{i=1}^{N}{leftlfloor{frac{N}{i}} ight floor}}$一共有$sqrt{N}$种取值

    其中每个取值的结尾为$left lfloor {frac{N}{left lfloor {frac{N}{i}} ight floor}} ight floor$

    可以配其他数论函数前缀和使用。

  • 相关阅读:
    jmeter 建立一个扩展LDAP测试计划
    jmeter 构建一个Web测试计划
    python 练习 29
    python 练习 28
    Python 练习 31
    python 练习 30
    python 练习 26
    python 练习 25
    python 练习24
    python 练习 23
  • 原文地址:https://www.cnblogs.com/blog-Dr-J/p/10161185.html
Copyright © 2011-2022 走看看