概念常识部分
常用公式和符号
$\sum \limits_{i=1}^n i^2 = \dfrac{n(n+1)(2n+1)}{6}$
$\sum \limits_{i=1}^n i^3 = (\dfrac{n(n+1)}{2})^2$
$(i,j)=\gcd(i,j)$
$M(n)$ 表示 $n$ 的最小质因子
$[exp]$ 当表达式 $exp$ 为真时取值为 $1$,否则为 $0$
整除
对于一个 $n$,$\lfloor \dfrac{n}{i} \rfloor$,$1 \leq i \leq n$ 只有 $O(\sqrt n)$ 种取值。
$\lfloor \dfrac{\lfloor \frac{n}{i} \rfloor}{j} \rfloor = \lfloor \dfrac{n}{ij} \rfloor$ ($1 \leq i,j \leq n$)
证明:$n=kij+c,0\leq c 数论函数指定义域为正整数,陪域为复数的函数。 对于数论函数 $f$ 若满足 $f(1)=1$,对任意 $\gcd(x,y)=1$,$f(xy)=f(x)f(y)$,则称 $f$ 为积性函数。 若对任意 $x,y$ 均成立,则称为完全积性函数。 $$\mu(1)=1$$ 对于 $n>1$,把 $n$ 唯一分解成 $n=p_1^{c_1}p_2^{c_2}\cdots p_k^{c_k}$,若 $c_1=c_2=\cdots=c_k=1$,$\mu(n)=(-1)^{k}$,否则 $\mu(n)=0$。 即 $\mu(n)=0$ 当且仅当 $n$ 中有平方因子。 $\sum \limits_{d|n}\mu(d)= [n=1]$ 证明:若 $n>1$,$n=p_1^{c_1}p_2^{c_2}\cdots p_k^{c_k}$,对答案有贡献的就只有单一质因子集合,即 $\sum \limits_{d|n}\mu(d)=\mu(1)+\mu(p_1)+\mu(p_2)+\cdots+\mu(p_1p_2)+\cdots+\mu(p_1p_2\cdots p_k)=\sum\limits_i\binom{k}{i}(-1)^i=(1-1)^k=0$ $\mu^2(n)=\sum \limits_{d^2|n}\mu(d)$ 证明:$\mu^2(n)=1$,$n$ 是无平方因子数,$\sum\limits_{d^2|n}\mu(d)=\mu(1)=1$。 否则 $n$ 是含平方因子数,对于 $n$ 中的平方因子为集合 $S$,那么 $\sum \limits_{d^2|n}\mu(d)=\sum \limits_{i}\binom{|S|}{i}(-1)^i=0$ $\varphi(n)=\sum\limits_{i=1}^n[(i,n)=1]$ $\sum\limits_{d|n}\varphi(d)=n$ 证明:考虑 $n$ 个分数 $\frac{1}{n},\frac{2}{n},\cdots,\frac{n}{n}$,把它们化成最简分式 $\frac{p}{q}$,就是 $n$ 个 $q|n$,$\gcd(p,q)=1$ 的分式,分别为答案贡献 $1$。 $\varphi(p^a)=p^a-p^{a-1}$ 证明:$[1,p^a]$ 以内只有 $p$ 的倍数与 $p^a$ 不互质,$p$ 的倍数有 $p^{a-1}$ 个,减去即可。 $\varphi(n)=n\prod\limits_{p|n}(1-\dfrac{1}{p})$ 证明:相当于容斥,减去 $n$ 以内所有质因子的倍数。 $\varphi(n)=\sum\limits_{d|n}\mu(d)\dfrac{n}{d}$ 证明:$\varphi(n)=\sum \limits_{i=1}^n[\gcd(i,n)=1]=\sum\limits_{i=1}^n\sum\limits_{d|(i,n)}\mu(d)=\sum\limits_{d|n}\mu(d)\sum \limits_{i=1}^n[d|i]=\sum\limits_{d|n}\mu(d)\dfrac{n}{d}$ $\epsilon(n)=[n=1]$ $I_{k}(n)=n^{k}, I(n)=n$ $\sigma_{k}(n)=\sum_{d | n} d^{k}$ $1(n)=1$ 对于两个数论函数 $f$ $g$,定义它们的狄利克雷卷积为 $h$ 则 $h(n)=\sum\limits_{d|n}f(d)g(\dfrac{n}{d})$ 记 $h=f*g$,$h(n)=(f*g)(n)$ 。 交换律:$f*g=g*f$ 结合律:$(f*g)*h=f*(g*h)$ 分配律:$(f+g)*h=f*h+g*h$ 单位元:$f*\epsilon=\epsilon*f=f$ 封闭性:$f,g$ 为积性函数,$f*g$ 为积性函数 一个数论函数 $f$,若 $f(1) \neq 0$,则存在唯一的逆函数 $f^{-1}$,使得 $f*f^{-1}=\epsilon$ $f^{-1}$ 的值如下: $f^{-1}(1)=\dfrac{1}{f(1)}$ $f^{-1}(n)=\dfrac{-1}{f(1)}\sum\limits_{d|n \wedge d 前面的一些式子就可以用狄利克雷卷积表示 $\varphi * 1=I$ $\mu * 1=\epsilon$ $\mu * I=\varphi$ $f(n)=\sum\limits_{d|n}g(d)$ 则 $g(n)=\sum \limits_{d|n}f(d)\mu(\dfrac{n}{d})$ 证明:$f=g*1 \Leftrightarrow f*\mu=\mu*g*1=g*(\mu*1)=g* \epsilon=g(n) \Leftrightarrow g(n)=f*\mu$ 到这里,线性筛加推公式可以解决大部分 $O(1e7)$ 以内的反演题目了。 推公式套路,枚举约数,通过 $\epsilon$ 进行反演。如下 $\sum\limits_{i=1}^n\sum\limits_{j=1}^n[(i,j)=1]=\sum\limits_{i=1}^n\sum\limits_{j=1}^n\sum\limits_{d|(i,j)}\mu(d)=\sum\limits_{d=1}^n\mu(d)\sum \limits_{i=1}^n[d|i]\sum\limits_{j=1}^n[d|j]=\sum \limits_{d=1}^n\mu(d)\lfloor \dfrac{n}{d} \rfloor ^2$ 然后就可以整除分块解决。 题目: BZOJ 4816. [Sdoi2017]数字表格 题解 BZOJ 3994. [SDOI2015]约数个数和 题解 BZOJ 3529. [Sdoi2014]数表 题解 BZOJ 2820. YY的GCD 题解 BZOJ 2301. [HAOI2011]Problem b 题解 BZOJ 2154. Crash的数字表格 & 2693. jzptab 题解 SPOJ - DIVCNT2 Counting Divisors (square) 题解 HDU 6588 Function 题解 计蒜客 tsy's number 题解 计蒜客 convex hull 题解 这里筛的意思不是筛素数,而是求积性函数前缀和。 有些题目数据范围在 $10^9 \sim 10^{11}$,没法线性筛做,考虑一种构造方法。 题目要求 $S(n)=\sum \limits_{i=1}^n f(n)$,存在一个前缀和易求的积性函数 $g$,它和 $f$ 的狄利克雷卷积的前缀和也易求,那么就可以求 $f$ 的前缀和。 $$\begin{aligned} & \sum_{i=1}^n (f*g)(i) \\=& \sum_{i=1}^n \sum_{d|i}f(d)g(\frac{i}{d}) \\=& \sum_{d=1}^n g(d) S(\lfloor \frac{n}{d} \rfloor) \end{aligned}$$ 那么 $g(1)S(n) = \sum \limits_{i=1}^n(f*g)(i)-\sum \limits_{i=2}^n g(i)S(\lfloor \frac{n}{i} \rfloor)$ 条件是 $g$ 和 $(f*g)$ 的前缀和都要比较好求。然后记忆化搜索即可。 预处理出 $O(n^{\frac{2}{3}})$ 以内的前缀和,那么总复杂度可以做到 $O(n^{\frac{2}{3}})$ $S(n)=\sum \limits_{i=1}^n \mu(i)$ 因为 $\mu * 1 = \epsilon$ 所以 $S(n)=1-\sum \limits_{i=2}^n S(\lfloor \dfrac{n}{i} \rfloor)$ $S(n)=\sum \limits_{i=1}^n [(i,k)=1]\mu(i)$ $(2 \leq k \leq 2000)$ $f(n)=[(n,k)=1]\mu(n)$,$g(n)=[(n,k)=1]$ $f*g=\sum \limits_{d|n}[(d,k)=1]\mu(d)[(\dfrac{n}{d},k)=1]=\sum \limits_{d|n}\mu(d)[(n,k)=1]=[(n,k)=1][n=1]=[n=1]$ 所以 $S(n)=1-\sum \limits_{i=2}^n [(i,k)=1] S(\lfloor \dfrac{n}{i} \rfloor)$ 问题变成求 $g(n)=[(n,k)=1]$ 的前缀和。 由 $(n,k)=(k,n\bmod k)$ 所以 $\sum \limits_{i=1}^n [(i,k)=1]=\sum \limits_{i=1}^n [(i \bmod k, k)=1]=\sum \limits_{i=1}^{n \bmod k}[(i,k)=1]+\lfloor \dfrac{n}{k}\rfloor \sum \limits_{i=1}^k [(i,k)=1]$ 预处理 $1 \sim k$ 的前缀和,那么 $g(n)$ 的前缀和就可以 $O(1)$ 得到。 $S(n)=\sum \limits_{i=1}^n \varphi(i)$ 因为 $\varphi * 1=n$ 那么 $S(n)=\dfrac{n(n+1)}{2}-\sum \limits_{i=1}^nS(\lfloor \dfrac{n}{i} \rfloor)$ $S(n)=\sum \limits_{i=1}^n i^2\varphi(i)$ $f(n)=n^2\varphi(n)$,$g(n)=n^2$ $f*g=\sum \limits_{d|n}d^2\varphi(d)\dfrac{n^2}{d^2}=n^2\sum \limits_{d|n}\varphi(n)=n^3$ 所以 $S(n)=\sum \limits_{i=1}^n i^3-\sum \limits_{i=2}^n i^2 S(\lfloor \dfrac{n}{i} \rfloor)$ hihocoder 1456 : Rikka with Lattice BZOJ 4652. [Noi2016] 循环之美 题解 唐老师博客里也有很多 待学。。数论函数
积性函数
积性函数
莫比乌斯函数
定义
相关公式
欧拉函数
定义
相关公式
乘积形式
欧拉函数与莫比乌斯函数的关系
其他积性函数
狄利克雷卷积
定义
性质
莫比乌斯反演
定义
套路 & 题目
杜教筛
定义
莫比乌斯函数
1
2
欧拉函数
1
2
题目
Min25 筛