杜教筛(下):狄利克雷卷积

定义:


定义 f , g 两个积性函数的狄利克雷卷积运算(*)为:

( f g ) ( n ) = d | n f ( d ) g ( n d )

性质:

狄利克雷卷积满足:

  1. 交换律: f g = g f
  2. 结合律: ( f g ) h = f ( g h )
  3. 分配律: f ( g + h ) = f h + g h
  4. 单位元: f e = f

常见函数卷积:

这里写图片描述
μ 1 = ϵ (莫比乌斯函数与1互为逆元)
ϕ 1 = I d (欧拉函数与n互为逆元)
ϕ = I d μ (莫比乌斯与欧拉的关系)

d = 1 1
1 = μ d


杜教筛:

由于涉及内容太多,分成两篇博客进行讲述,建议先看前一篇,就当你已经看完前一篇了,我这里会讲的快一点

i = 1 n f ( i ) ,设为 A n s ( n )

找一个积性函数g(x),那么

i = 1 n ( f g ) ( i ) = i = 1 n d | i g ( d ) f ( n d )
前一篇中有理论证明,这里对出数学证明,显然:
i = 1 n d | i = d = 1 n d | i i <= n
那么:
i = 1 n ( f g ) ( i ) = d = 1 n d | i i <= n g ( d ) f ( n d ) = d = 1 n g ( d ) j = 1 [ n d ] f ( j )
接下来和前一篇一样:
d = 1 n g ( d ) j = 1 [ n d ] f ( j ) = d = 2 n g ( d ) j = 1 [ n d ] f ( j ) + g ( 1 ) j = 1 n f ( j ) g ( 1 ) A n s ( n ) = i = 1 n ( f g ) ( i ) d = 2 n g ( d ) A n s ( n / d )
结论:
A n s ( n ) = i = 1 n ( f g ) ( i ) d = 2 n g ( d ) A n s ( n / d ) g ( 1 )

按照上一篇的说法,递归+整除分块+线性筛 收尾。


例题:

i = 1 n ϕ ( i ) i

显然,如果卷一个函数1的话,变成 i = 1 n d | i ϕ ( d ) d ,好像并没有什么简单的化简,而卷一个函数 I d 的话,就变成了

i = 1 n d | i ϕ ( d ) d i d i = 1 n i d | i ϕ ( d )
d | i ϕ ( d ) = i ,所以得到:
f ( i ) = ϕ ( i ) i , g ( i ) = i , A n s ( n ) = i = 1 n ϕ ( i ) i A n s ( n ) = i = 1 n ( f g ) ( i ) d = 2 n g ( d ) A n s ( n / d ) g ( 1 ) = i = 1 n i 2 d = 2 n d A n s ( n / d )
这题就变得异常简单了

总结:

当求积性函数前缀和不好求的时候,用狄利克雷卷上一个积性函数,使卷完后的式子的前缀和变得简单,卷完后的前缀和算出来基本上题目就完成了

  • 如果出现 ϕ ( x ) ,那么就凑 d | n ϕ ( d ) = n
  • 如果是 u ( x ) ,就凑 d | n n 1 u ( d ) = 0

猜你喜欢

转载自blog.csdn.net/jk_chen_acmer/article/details/82666241