• Stern-Brocot Tree (SB树)
  • 例题:BZOJ2852:给两个有理数 0205听课笔记2_莫比乌斯反演, 求最小的正整数 0205听课笔记2_莫比乌斯反演_02, 使得 0205听课笔记2_莫比乌斯反演_03 里有整数。0205听课笔记2_卷积_04, 0205听课笔记2_积性函数_05 整数部分不超过 0205听课笔记2_莫比乌斯反演_06, 小数位数不超过 0205听课笔记2_积性函数_07 位。

莫比乌斯反演

  • 数论函数:定义域在正整数域上的函数。
  • 积性函数:0205听课笔记2_积性函数_08,则0205听课笔记2_莫比乌斯反演_090205听课笔记2_积性函数_10最后那个是除数函数)
  • 完全积性函数:0205听课笔记2_莫比乌斯反演_090205听课笔记2_莫比乌斯反演_12
  • Dirichlet卷积。0205听课笔记2_卷积_13,满足交换律结合律分配律。且如果0205听课笔记2_莫比乌斯反演_14为积性函数,那么0205听课笔记2_莫比乌斯反演_15也为积性函数。
  • 0205听课笔记2_积性函数_16
  • 0205听课笔记2_莫比乌斯反演_17,则0205听课笔记2_莫比乌斯反演_18
    0205听课笔记2_积性函数_19
  • 简单例题:0205听课笔记2_卷积_20
  • 0205听课笔记2_积性函数_21,其中0205听课笔记2_莫比乌斯反演_22
  • 简单例题:SPOJ LCMSUM
  • 0205听课笔记2_卷积_23
  • 显然答案等于0205听课笔记2_卷积_240205听课笔记2_卷积_25
  • 一个人的数论:
  • 插值求出幂和多项式,然后用积性函数的性质计算答案。​​博客套博客套博客​​
  • 怎样跑得更快:0205听课笔记2_卷积_26,现有序列0205听课笔记2_莫比乌斯反演_27满足0205听课笔记2_莫比乌斯反演_28,求0205听课笔记2_卷积_29,无解输出0205听课笔记2_卷积_30

杜教筛

都会就略了。上个图。

0205听课笔记2_卷积_31


第一个式子变化基于0205听课笔记2_莫比乌斯反演_32会有贡献当且仅当0205听课笔记2_莫比乌斯反演_33

Min_25筛

0205听课笔记2_积性函数_34

0205听课笔记2_莫比乌斯反演_35

0205听课笔记2_莫比乌斯反演_36

0205听课笔记2_卷积_37

0205听课笔记2_积性函数_38

0205听课笔记2_积性函数_39

  • GCD Array
  • 0205听课笔记2_积性函数_40

  • 建立辅助数组0205听课笔记2_莫比乌斯反演_41使得0205听课笔记2_莫比乌斯反演_42
    0205听课笔记2_莫比乌斯反演_43
    每次修改相当于枚举0205听课笔记2_积性函数_44,然后给0205听课笔记2_卷积_45
    查询答案为0205听课笔记2_莫比乌斯反演_46
    可以分块统计,用树状数组维护0205听课笔记2_莫比乌斯反演_41的前缀和。
  • 简单题:0205听课笔记2_莫比乌斯反演_480205听课笔记2_莫比乌斯反演_49
  • 杜教筛:​​[bzoj 4176] Lucas的数论​​
  • 0205听课笔记2_积性函数_50,所以0205听课笔记2_卷积_51.
  • 暴力是根号的,整除分块一下能跑过0205听课笔记2_莫比乌斯反演_52。整除分块的块数是0205听课笔记2_积性函数_53因为0205听课笔记2_莫比乌斯反演_54只有0205听课笔记2_卷积_55种;0205听课笔记2_卷积_56时,0205听课笔记2_积性函数_57。最后再加上杜教筛的时间复杂度。最后时间复杂度算出来是0205听课笔记2_积性函数_58