浅析勒贝格积分的思想在数论函数求和中的应用

(标题党)利益声明:本文标题纯粹胡扯请读者忽略。

I. PreFace

我们来看这样一题(虽然跟本文看起来没什么关系):

给定序列 (A),请在 (O(n)) 时间内求出如下式子:

[sum_{l=1}^nsum_{r=l}^{n}min_{lle j le r} A_j ]

这个式子中最困难的理应是区间最小值这一项,倘若枚举 (l,r),这个式子再怎么都是 (O(n^2)) 的。但是我们可以枚举这个最小值,对于每个位置看一看它在哪些区间中是最小值,然后就可以快速统计了。

你会发现这东西就好像是一个黎曼不可积的函数,它可能勒贝格可积;我们枚举的这个最小值就是在给 (y) “分段”,而寻找它在哪些区间中作为最小值其实就是在寻找它的 勒贝格测度

事实上,我们要求的这个式子其实就是一个三维上的分段函数,(i)(j) 是自变量,(min) 是函数值;尽管它黎曼不可积,但是它勒贝格可积。这就解释了为什么这么走行得通而直接枚举 (i,j) 行不通。(胡扯中)。

I. 正文

我们考虑把这个方法用到整除的偏序集上。来一个简单的例题:

[f(n,m)=sum_{i=1}^nsum_{j=1}^m gcd(i,j) ]

让我们把它写成这样的形式(左边的函数值,右手边用条件的形式表示测度):

[f(n,m)=sum_{d=1}^{min(n,m)} d sum_{i=1}^nsum_{j=1}^m [gcd(i,j) = d] ]

用一个常用方法:(gcd=k) 的时候把 (i)(j) 除以 (k),得到如下式子:

[f(n,m)=sum_{d=1}^{min(n,m)} d sum_{i=1}^{left lfloor frac{n}{d} ight floor}sum_{j=1}^{left lfloor frac{m}{d} ight floor} varepsilon(gcd(i,j))=sum_{d=1}^{min(n,m)} d imes g(left lfloor frac{n}{d} ight floor, left lfloor frac{m}{d} ight floor) ]

上面这个方法的意义在于,现在它可以用 (1 * mu = varepsilon) 了:

[g(n,m)=sum_{i=1}^nsum_{i=1}^msum_{d|i, d|j} mu(d) ]

于是我们又可以把它写成这样的形式:

[g(n,m) = sum_{d=1}^{min(n,m)} mu(d) sum_{i=1}^nsum_{j=1}^m = sum_{d=1}^{min(n,m)} mu(d) left lfloor frac{n}{d} ight floor imes left lfloor frac{m}{d} ight floor ]

这个式子已经可以 (O(n)) 求了。

III. Tricks

我们罗列一些方法、技巧、常见结论:

  1. (id = varphi * 1),例如上面那个 (gcd) 的式子,我们一开始就不用直接把 (gcd) 直接提出来,而是把它展开后提出来,这样可以省却很多测度中的条件:

[f(n,m) = sum_{i=1}^nsum_{j=1}^msum_{d|i,d|j}varphi(d)=sum_{d=1}^{min(n,m)}varphi(d) left lfloor frac{n}{d} ight floor imes left lfloor frac{m}{d} ight floor ]

  1. (varepsilon = 1 * mu),这个式子可以解决很多测度中遇到的条件式,即 ([a = b] = [frac{a}{b} = 1]),这个的运用就很广泛了,所以不用举例。

  2. 给整除条件、(gcd) 等的式子约分,比如下面这两个:

[sum_dsum_{i=1}^nsum_{j=1}^n[d|i,d|j] imes i imes j imes gcd(i,j) = sum_d d^3sum_{i=1}^{left lfloor frac{n}{d} ight floor}sum_{j=1}^{left lfloor frac{n}{d} ight floor}ijgcd(i,j) ]

[sum_{i|n}sum_{j|m}sum_{x|i,x|j}d(x) = sum_{x|n, x|m}d(x)sum_{i|n}sum_{j|m}[x|i, x|j] = sum_{x|n, x|m}d(x) sum_{i|frac{n}{x}}sum_{j|frac{m}{x}}1 = sum_{x|n,x|m}d(x)d(frac{n}{x})d(frac{m}{x}) ]

  1. 利用辗转相减的式子首尾相加,如下面两个式子:

[sum_{i=1}^n i [gcd(i,n)=1] = frac{nvarphi(n)}{2} ]

[sum_{i=1}^n frac{icdot n}{gcd(i,n)} = frac{1}{2} cdot sum_{i=1}^{n-1} frac{n^2}{gcd(i,n)} +n ]

  1. $ d(icdot j)=sumlimits_{x mid i}sumlimits_{y mid j}[gcd(x,y)=1]=sumlimits_{p mid i,p mid j}mu(p)dleft(frac{i}{p} ight)dleft(frac{j}{p} ight)$,应用看这题:「SDOI2015」约数个数和

  2. (d = 1 * 1)(sigma = 1 * id),这个用于将含有这两个的式子展开来。

未完待续......

as 0.4123
原文地址:https://www.cnblogs.com/Linshey/p/14176909.html