約數個數函數的一個性質證實,以及其推廣

洛谷P3327 [SDOI2015]約數個數和函數

洛谷P4619 [SDOI2018]舊試題spa

要用到這個性質,並且網上幾乎沒有能看的證實,因此特別提出來整理一下。get

Original

二維

\[ d(AB) = \sum_{x|A} \sum_{y|B} [\gcd (x,y) = 1] \]class

其中 \(d\) 是約數個數函數,即 \(d_k (n) = \sum_{d|n} 1\)原理

(看上去比較難以想象對吧)date

右側的枚舉,一部分因子算多了(好比當 \(\gcd(x,y)=1\) 且額外有 \(x|B,y|A\) 時,能夠枚舉出 \(x*y = y*x\) ),一部分因子又沒有算(好比當 \(\gcd(A,B) \not= 1\) 時的 \(A*B\) )。可是算多和算少之間達成了詭異的平衡。gc

首先考慮 \(A,B\) 互質的狀況。顯然此時右式中的 \([\gcd (x,y) = 1]\) 恆成立。而左式能夠經過積性函數的性質拆開。兩側都爲 \(d(A)*d(B)\) ,成立。(其實並無按是否互質討論的必要,可是這樣想能讓咱們的思路更加清晰)方法

那麼考慮 \(\gcd(A,B) \not= 1\) 時的狀況。不妨先證實 \(A = p^a, B = p^b\)\(p\) 是素數,這兩個 \(p\) 是同一個數)時等式成立。di

這部分的證實是容易的。根據約數個數的定義,左式顯然爲 \(a+b+1\)。對於右式,設 \(x = p^c, y= p^d\) ,若要使 \([\gcd (x,y) = 1]\) 成立, \(c,d\) 中至少有一個爲 \(0\) 。那麼當 \(b=0\)時,\(c \in [0, a]\);當 \(a=0\) 時, \(c \in [0,b]\) ;其餘狀況都不知足條件。排除重複的 \(c=0, d=0\) ,共有 \(a+b+1\) 個狀況成立,與左式相同,故等式成立。co

討論更加通常的狀況。有了前面的證實,咱們考慮將 \(AB\) 分解質因數後食用,分解後的每一項的形式爲 \(p^{a+b}\) 。左邊根據約數個數基本性質「指數加一連乘積」,即每個 \(p\) 對應的 \((a+b+1)\) 之積。對於右側,前證說明對於每一個 \(p\) ,合法的 \(c,d\) 的選擇有對應的 \(a+b+1\) 種,要讓 \([\gcd(x,y)=1]\) 須要每個 \(p\) 都是合法狀況。而每一個 \(p\) 相對獨立,其本質就是許多個「選擇」,直接用乘法原理合並起來便可,因而也與左式相同。

用通俗一點的說法,我無論其餘的 \(p\) 到底須要讓 \(x,y\) 知足什麼樣的條件才能使 \([\gcd(x,y)=1]\) ,反正在我這個 \(p\) 這裏只有 \(a+b+1\) 種方案合法。

總之這樣就證畢了。

證實思路很像積性函數的合併,也許對其餘一些積性函數命題的證實這種方法也管用。

高維

對於形如
\[ d(ABC) = \sum_{x|A} \sum_{y|B} \sum_{z|C} [\gcd (x,y) = 1] [\gcd (y,z) = 1] [\gcd (x,z) =1] \]

的高維拓展,證實思路基本相同,再也不贅述。(若是以爲有點迷能夠先跳過,Extended裏的證實更加接近本質)


Extended (update 2020/03/08)

下面研究 Original 推廣到廣義約數個數函數的形式。

二維

\[ \sigma_k (AB) = \sum_{x|A} \sum_{y|B} [\gcd(x,y)=1] (x \frac{B}{y})^k = \sum_{x|A} \sum_{y|B} [\gcd(x,\frac{B}{y})=1] (x y)^k \]

其中 \(\sigma_k\) 是廣義的約數個數函數,即 \(\sigma_k (n) = \sum_{d|n} d^k\)

顯然中式和右式是等價的。現證實左式和右式等價。

證實思路與上面基本一致。一樣的,咱們先解決 \(A=p^a, B=p^b\) 的狀況。

首先,直接由定義得出左式:
\[ 左式 = \sum_{i=0}^{a+b} p^{ik} \]

一樣設 \(x=p^c, y=p^d\) 。分析 \([\gcd(x,\frac{B}{y})=1]\) 的意義,它的意思是若 \(x\) 中不含 \(p\)\(c=0\) ),則 \(y\) 能夠隨便選( \(d \in [0,b]\) );若 \(x\) 中含 \(p\)\(c \in [1,a]\) ),則 \(y\) 就必須包含全部的 \(p\)\(d=b\) ),不然 \(\frac{B}{y}\) 裏就含有 \(p\) 了;其餘狀況不知足條件 。

即合法的狀況爲 \((0,[0,b])\)\(([1,a],b)\)

那麼,根據右式的形式,能夠得出
\[ \begin{aligned} 右式 &= \sum_{i=0}^b p^0 p^i + \sum_{i=0}^a p^i p^b \\ &= \sum_{i=0}^b p^i + \sum_{i=0}^a p^{b+i} \end{aligned} \]

該式實際上只是將左式的枚舉從 \(b\) 那裏切開了。兩式是等價的。

那麼和上面同樣的,對於通常的狀況分解質因數,對每個 \(p\) 分別考慮,積性合併便可。所有乘起來的依據也是乘法原理( \(\sum * \sum\) 就是在枚舉全部的方案對應貢獻乘積之和)。可能有人問:這裏的 \(B\) 不是發生變化了嗎?其實 \(B\) 充當的是一個 \(y\) 的全集,不是 \(p^b\) 了也不影響 \(x,y\) 的取值,因此是沒有關係的。能夠參考一下 Original 裏「通俗一點的說法」。

高維

形如
\[ \sigma_k (ABC) = \sum_{x|A} \sum_{y|B} \sum_{z|C} [\gcd(x,\frac{B}{y})=1] [\gcd(y,\frac{C}{z})=1] [\gcd(x, \frac{C}{z}=1)] (x y z)^k \]

的高維拓展, \(\gcd\) 部分就是如 \(x-y\)\(x-z\)\(y-z\) 兩兩配對的形式,這樣來限制取值範圍。

證實思路基本相同,一樣寫出合法狀況 \((0,0,[0,c])\)\((0,[1,b],c)\)\(([1,a],b,c)\) ,對應 \(p^{a+b+c+1}\) ,就容易證實了。

已打表檢驗正確。

相關文章
相關標籤/搜索