简 单 数 论。

  • gcd
  • lcm
  • gcd的应用:
  • 类欧几里得问题:
  • 0205听课笔记1_时间复杂度

  • 0205听课笔记1_时间复杂度_02

  • 可假设
  • 0205听课笔记1_递归_03

  • ,因为大于等于时减去一个
  • 0205听课笔记1_递归_04

  • 0205听课笔记1_等差数列_05

  • 的贡献就在答案上加一个等差数列,
  • 0205听课笔记1_时间复杂度_06

  • 就在答案上加一个
  • 0205听课笔记1_递归_07

  • 就行了。而
  • 0205听课笔记1_等差数列_08

  • 时,画个图发现
  • 0205听课笔记1_递归_09

  • 可以翻转一下,就转化成了
  • 0205听课笔记1_等差数列_10

  • 的情况。就变成了一个递归,时间复杂度
  • 0205听课笔记1_时间复杂度_11

  • 裴蜀定理与
  • 0205听课笔记1_时间复杂度_12

  • 0205听课笔记1_递归_13

  • 简单题:已知
  • 0205听课笔记1_时间复杂度_14

  • ,求使得
  • 0205听课笔记1_递归_15

  • 0205听课笔记1_递归_16

  • 有多少个,其中
  • 0205听课笔记1_递归_17

  • 0205听课笔记1_递归_18

  • 已知,
  • 0205听课笔记1_时间复杂度_19

  • 已知。
  • 直接把
  • 0205听课笔记1_时间复杂度_20

  • 的系数算出来。然后
  • 0205听课笔记1_递归_21

  • 欧拉定理:对于
  • 0205听课笔记1_递归_22

  • ,有
  • 0205听课笔记1_等差数列_23

  • ;对于
  • 0205听课笔记1_时间复杂度_24

  • ,有
  • 0205听课笔记1_等差数列_25

  • BZOJ 3884:
  • 利用欧拉定理,递归,模数变成了
  • 0205听课笔记1_等差数列_26

  • 。而
  • 0205听课笔记1_等差数列_27

  • ,所以最多有
  • 0205听课笔记1_等差数列_28

  • 层。
  • 素数:
  • 判素数。
  • 暴力
  • 0205听课笔记1_递归_29

  • Miller_Robin。
  • 质因数分解。
  • 如何分解
  • 0205听课笔记1_时间复杂度_30

  • ?线性筛
  • Pollard-Rho
  • 质数个数。
  • 中国剩余定理:
  • 0205听课笔记1_等差数列_31

  • 0205听课笔记1_等差数列_32

  • 两两互质
  • 不互质?
  • 例题:NOI2018 屠龙勇士:模板裸题
  • 例题:GCD Table:给出
  • 0205听课笔记1_时间复杂度_33

  • 的数表,其中第
  • 0205听课笔记1_递归_34

  • 0205听课笔记1_递归_35

  • 列是
  • 0205听课笔记1_递归_36

  • ,再给定一个长度为
  • 0205听课笔记1_递归_37

  • 的数列
  • 0205听课笔记1_等差数列_38

  • ,判断其是否在数表的某一行出现过。
  • 0205听课笔记1_时间复杂度_39


  • 阶:
  • 0205听课笔记1_递归_40


  • 原根:此处的
  • 0205听课笔记1_等差数列_41

  • 指g模p的阶。
  • 0205听课笔记1_等差数列_42


  • BSGS:
  • 0205听课笔记1_等差数列_43


  • exBSGS:
  • 0205听课笔记1_时间复杂度_44

  • 多项式复合:已知
  • 0205听课笔记1_递归_45

  • ,求
  • 0205听课笔记1_时间复杂度_46


  • SDOI2015 序列统计
  • 0205听课笔记1_递归_47

  • Lucas定理
  • 例题:
  • 卢卡斯定理把它转化为p进制下每一位的组合数,然后数位DP。
  • 例题:小Q的集合
  • 右边爆算,左边就是二项式定理等于
  • 0205听课笔记1_时间复杂度_48

  • 扩展Lucas
  • 对大质数取模
  • 无需预处理的扩展卢卡斯