占楼# 8.1 数论
放在前面:
今天什么 8 (
2h,从整除草到狄利克雷卷积,再用 2 个小时筛法速通。
所以今天只学到了 21 左右吧,太抽象了。
整除
约数个数大约 O(n31) 级别,106 内最大值为 240,1018 内最大值为 103680。(本质不同素因子个数在这两个范围分别为 7,15)。
计算约数个数经典 O(n31)解法。
约数个数前缀和计算。
同余
裴蜀定理,exgcd。
CRT,EXCRT。
多项式环上的中国剩余定理与拉格朗日插值等价,而单位根反演是两者的特殊情况。
⎩⎨⎧x≡a1(modp1)x≡a2(modp2)⋮x≡an(modpn)→x≡∑ai⋅piP⋅inv(piP,pi)(modP=∏pi)Lucas,Kummer,exLucas。
费马小定理,欧拉定理。
同余最短路。
原根
阶。
在已知模数的素数分解的情况下,求阶是 polylog 的。
原根。
有原根当且仅当等于 1,2,pk,2pk,原根数量为 φ(φ(m)),最小原根不超过 O(m41)。
原根的判定:对于所有 m 的素因子 p,检查是否满足 gpφ(m)≡1(modm)。
BSGS。
Index calculus。
筛法
筛法
线性筛,埃氏筛。
狄利克雷卷积,狄利克雷前缀和。
卷积性函数:写出贝尔级数,每个素因子上都是线性递推。
数论分块筛:
若 h=f∗g,则有 Sh(n)=∑ifiSg(⌊in⌋)g(i)。
杜教筛:
若 h=f∗g,则有 Sf(n)g(1)=Sh(n)−∑i≥2Sf(⌊in⌋)。
常见的贝尔级数:
ϵ(n):1I(n):1−x1μ(n):1−xλ(n):1+x1μ2(n):1+x2ω(n):1−x1+xidk(n):1−pkx1σk(n):(1−pkx)(1−x)1φ(n):1−px1−xJk(n):1−pkx1−x
例题集&前头
后面例题更近较慢,因为 8 LATEX 太多了,别催。