趣味数论

数论分块

\(\lfloor \dfrac ni \rfloor\)\(1 \leq i \leq n,i \in Z\) 时只有 \(O(\sqrt n)\) 种取值。

积性函数

满足对于任意 \(\gcd(x,y)=1\)\((x,y)\)\(f(x)f(y)=f(xy)\) 的函数 \(f\) 是积性函数。

满足对于任意的 \((x,y)\)\(f(x)f(y)=f(xy)\) 的函数 \(f\) 是完全积性函数。

部分积性函数:\(1(n)=1\)\(Id_k(n)=n^k\)\(Id(n)=n\)\(\varepsilon(n)=[n=1]\),欧拉函数 \(\varphi(n)\)\(\sigma_k(n)=\sum_{d|n}d^k\),莫比乌斯函数 \(\mu(n)\)

狄利克雷卷积

狄利克雷卷积是两个函数的运算,结果也是一个函数。

\[(f*g)(x)=\sum_{d|x}f(d)g(\dfrac xd) \]

这个式子展示了 \(f\)\(g\) 经过狄利克雷卷积得到的函数的表达式,其中 \(f*g\) 就是两者狄利克雷卷积的结果。

一些结论

狄利克雷卷积满足交换律结合律,\(\varepsilon\) 为狄利克雷卷积的单位元,两个积性函数狄利克雷卷积的结果仍然为积性函数。

\(1*\mu=\varepsilon\)\(1*\varphi=Id\)\(Id*\mu=\varphi\)\(Id_k*1=\sigma_k\)

杜教筛

\(S(n)=\sum_{i=1}^{n}f(i)\),其中 \(f\) 为积性函数。

构造函数 \(h,g\),满足 \(h=f*g\),则有:

\[\sum_{i=1}^{n}h(i) \\ =\sum_{i=1}^{n}\sum_{d|i}f(\dfrac id)g(d) \\ = \sum_{d=1}^{n}g(d)\sum_{i=1}^{\lfloor \frac nd \rfloor} f(i) \\ =\sum_{d=1}^{n}g(d)S(\lfloor \dfrac nd \rfloor) \\ =g(1)S(n)+\sum_{d=2}^{n}g(d)S(\lfloor \dfrac nd \rfloor)\]

因此

\[S(n)=\dfrac{\sum_{i=1}^{n}h(i)-\sum_{d=2}^{n}g(d)S(\lfloor \dfrac nd \rfloor)}{g(1)} \]

\(n\) 大时用数论分块递归到小一些的 \(S(n)\) 上,\(n\) 小时用线性筛预处理出 \(S(n)\) 直接回答。

\(B=n^{\frac 23}\)\(n>B\) 时递归,\(n \leq B\) 部分线性筛,总体复杂度 \(O(n^{\frac 23})\)(假设 \(h\)\(g\) 的前缀和计算是 \(O(1)\) 的)。

贝尔级数

取积性函数 \(f\),根据积性函数的定义,我们知道若 \(n=\prod_{i=1}^{m}p_i^{k_i}\),则有 \(f(n)=\prod_{i=1}^{m}f(p_i^{k_i})\)

喜欢生成函数的小朋友灵机一动,定义了积性函数 \(f\) 的贝尔级数为:

\[F_p(x)=\sum_{i=0}^{\infty}f(p^i)x^i \]

一些结论

下面给出一些平凡的积性函数的贝尔级数:

  • \(\varepsilon \to 1\)
  • \(1 \to \dfrac{1}{1-x}\)
  • \(Id_k \to \dfrac{1}{1-p^kx}\)
  • \(1^{-1}=\mu \to 1-x\)
  • \(\mu^2 \to 1+x\)
  • \(\sigma_0 \to \dfrac{1}{(1-x)^2}\)
  • \(\sigma_k \to \dfrac{1}{(1-x)(1-p^kx)}\)
  • \(\varphi \to \dfrac{1-x}{1-px}\)
  • \(\omega(n)=2^{\text{prime factor number of n}} \to \dfrac{1+x}{1-x}\)

两个积性函数做狄利克雷卷积,相当于是它们的贝尔级数乘起来。

这个性质非常强劲,意味着我们做杜教筛的时候不再需要在茫茫函数中寻找,而是可以有迹可循地构造。

下面展示部分杜教筛原理的贝尔级数视角:

  • \(1*\mu=\varepsilon \to \dfrac{1}{1-x} \times (1-x)=1\)
  • \(1*\varphi=Id \to \dfrac{1}{1-x} \times \dfrac{1-x}{1-px}=\dfrac{1}{1-px}\)
  • \(Id*\mu=\varphi \to \dfrac{1}{1-px} \times (1-x)=\dfrac{1-x}{1-px}\)
  • \(Id_k*1=\sigma_k \to \dfrac{1}{1-p^kx} \times (1-px)=\dfrac{1}{(1-x)(1-p^kx)}\)

例题:AT_xmascon19_d Sum of (-1)^f(n)

刻画一下 \((-1)^{f(n)}\) 的贝尔级数,是 1 -1 1 -1 1 -1...,也就是 \(\frac 1{1+x}\)

注意到 \(\frac 1{1+x} \times \frac 1{1-x}=\frac 1{1-x^2}\),对应到原函数上,就是 \((-1)^{f(n)} * 1=[\text{n is a square number}]\),于是不难杜教筛了。

PN 筛

冷群筛

min25 筛

DIVCNT1

posted @ 2025-09-01 15:01  luogu_gza  阅读(32)  评论(0)    收藏  举报