NumberTheory

莫比乌斯反演

莫比乌斯函数 μ(n) 的定义如下:

  1. 当 n = 1 时,μ(1) = 1。

  2. 当 n 含有平方因子,μ(n) = 0。

  3. μ(n) = -1^k, k 为 n 的本质不同质因子个数

莫比乌斯函数性质

\[\sum_{d|n}^{}μ(n) = \begin{cases} 1 & n=1\\ 0 & n \ne1 \end{cases}\]

线性筛

μ函数为积性函数,可以线性筛莫比乌斯函数(线性筛基本可以求所有的积性函数)

void getMu() {
  mu[1] = 1;
  for (int i = 2; i <= n; ++i) {
    if (!flg[i]) p[++tot] = i, mu[i] = -1;
    for (int j = 1; j <= tot && i * p[j] <= n; ++j) {
      flg[i * p[j]] = 1;
      if (i % p[j] == 0) {
        mu[i * p[j]] = 0;
        break;
      }
      mu[i * p[j]] = -mu[i];
    }
  }
}

杜教筛

假设我们要求一个积性函数的前缀和

\[S(n)=\sum_{i=1}^{n}f(i) \]

,我们可以构造另外两个积性函数函数
h=f∗g,使得h的前缀和便于计算。

posted @ 2025-08-05 21:23  ᝰꫛꫀꪝ_yqy  阅读(29)  评论(0)    收藏  举报
/**手机适配**/ @media only screen and (max-width: 767px) { header{width:100%} .banner{width: 100%;height: 100px;} .avatar{width: 80px;height: 80px;margin: 6px;} .avatar a{padding-top: 59px;width: 80px;height: 80px;background-size: 80px 78px;} .avatar a span{margin-top: 0px; padding-top: 0px; width: auto;height: auto;} .bloglist h3 {margin: 20px 0 10px 10px;} .bloglist figure {width:auto;margin-left: 4px;} .bloglist figure img {width: 90px;height: 60px;} .bloglist ul{width:64%} .dateview {width:100%;padding-left:4px;} .dateview span {margin: 0 3px;} .weixinnone,.thumbs{display: none} .right{width: 100%;margin-top: 22px} .right ul{width:64%;margin-left: 22px;} .weather{margin: 20px 50px;} .bloglinkli{display: block} footer{width:100%} }