1. 程式人生 > >積性函式的性質及證明 + 線性篩

積性函式的性質及證明 + 線性篩

引言

在數論問題中,積性函式有著廣泛的應用。
如在莫比烏斯反演問題中,函式變換之後如何快速維護字首和往往是最重要也是最難的一步。如果維護的函式具有積性,那就可以嘗試利用線性篩在O(n)的時限內完成預處理,從而達到優化複雜度的神奇作用。
本文的大部分相關性質及公式來自:

博主將試著證明其中的性質公式,嚴謹性可能欠缺,其目的主要是幫助記憶和理解
因水平有限 若有錯誤之處還望指出qwq~

積性函式的定義和性質

定義: 對於一個定義域為N+的函式f,對於任意兩個互質的正整數a,b,均滿足f(ab)=f(a)f(b),則稱函式f為積性函式
若對於任意整數a

,b都有f(ab)=f(a)f(b),則函式f被稱為完全積性函式。

性質
(1)對於任意積性函式f均有f(1)=1

證明:因1與任何數都互質,假設存在一個正整數a滿足f(a)!=0,故由定義:

f(a)=f(1a)=f(1)f(a)
f(a)不為0,故等號兩端同時消去一個f(a),得:
f(1)=1
證畢。

(2)對於一個大於1的正整數N,N=paiipi為互不相同的素數。那麼對於一個積性函式f來說,有:

f(N)=f(paii)=f(paii)
f完全積性,則f(N)=f(pi)ai

證明:由積性和完全積性的定義易得。

尤拉函式φ

定義:對於正整數n

φ(n)是小於n的正整數中與n互質的個數。

定義式:若n=paii

φ(n)=n(11pi)

性質
(1)尤拉函式為積性函式,而不是完全積性函式。

證明:設兩個互質的正整數n,m
則:
φ(n)=n(11pi)
φ(m)=m(11pi)
φ(n)φ(m)=n(11pi)m(11pi)=nm(11pi)(11pi)
n,m互質,故 pi,pi 各不相同,且均為nm的質因子。

故推出:
φ(nm)=φ(n)φ(m)
積性函式性質得證。
而完全積性由上證明可見,n,m互質是一個嚴格且不可或缺的條件,可見,尤拉函式不是完全積性函式。

(2)假設存在一個素數

相關推薦

函式性質證明 + 線性

引言 在數論問題中,積性函式有著廣泛的應用。 如在莫比烏斯反演問題中,函式變換之後如何快速維護字首和往往是最重要也是最難的一步。如果維護的函式具有積性,那就可以嘗試利用線性篩在O(n)的時限內完成預處理,從而達到優化複雜度的神奇作用。 本文的大部分相關性質

BZOJ 3944 Sum (函式字首和杜教)

#include<bits/stdc++.h> using namespace std; #define debug puts("YES"); #define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++) #def

[絕對能看懂!]Deciphering Password(函式+線性+素數分解)

描述 Xiaoming has just come up with a new way for encryption, by calculating the key from a publicly viewable number in the following way: Let t

淺談函式線性

前置知識 線性篩 線性篩可以在嚴格$O(n)$的時間內篩出積性函式的值, 它有常見的套路 假設$n = p_1^{a_1} p_2^{a_2} \dots p_k^{a_k}$ 如果我們能快速得出$f(p_i)$和$f(p_i^{k+1})$的取值,那麼直接套板子就行了 在下文中如無特殊說

線性,函式,狄利克雷卷,常見函式

一些性質 積性函式:對於函式\(f(n)\),若滿足對任意互質的數字\(a,b,a*b=n\)且\(f(n)=f(a)f(b)\),那麼稱函式f為積性函式。 狄利克雷卷積:對於函式f,g,定義它們的卷積為 \((f∗g)(n)=\sum_{d|n}f(d)g(\frac{n}{d})\)。 狄利克雷卷積滿足

【數論】線性函式

尤拉函式: 定義:φ(n)表示1~n中和n互素的數目 性質: 首先可以根據概念得知,當n為素數時,顯然ϕ(n)=n−1 尤拉函式是個不完全積性函式,證明過程較複雜,貼個連結趕緊跑 根據它積性函式的性質和唯一分解定理,我們就可以把任意一個φ(n)

杜教(整除分塊,函式,尤拉與莫比烏斯,狄利克雷卷

參考資料 整除分塊: 當我們求∑ni=1f([ni])∑i=1nf([ni])的時候,如果1到n求一遍感覺太傻了,因為會有很多重複的計算,例如:n=10000時,i在[101,111]時,都有[ni]=9[ni]=9,所以我們只需要對所有數分成如上的一個

bzoj 4407 於神之怒加強版 —— 反演+函式

題目:https://www.lydsy.com/JudgeOnline/problem.php?id=4407 推導如這裡:https://www.cnblogs.com/clrs97/p/5191506.html 然後發現 \( F(D) \) 是一個積性函式,可以篩質數的同時篩出來; 首先,單個質

【總結】函式字首和(杜教

前言: 據CCH和LJH說,杜教篩似乎是一個非常套路的東西,幾乎所有的杜教篩的題目推理方式都是一模一樣的(但實測有些推理還是很噁心的)。所以複習杜教篩不需要太多時間,粗略看一遍,留下印象即可。 杜教篩其實是一種簡化運算的推理方式,它的使用條件並不僅限於積

Hdu1452 因子和的函式 以及函式的一些性質和舉例

在非數論的領域,積性函式指所有對於任何a,b都有性質f(ab)=f(a)f(b)的函式。   在數論中的積性函式:對於正整數n的一個算術函式 f(n),若f(1)=1,且當a,b互質時f(ab)=f

hdu5528(函式+尤拉函式)

題意:設(題目已把f(6)的表給出),,給定n(n<=1e9),求g(n) 最主要的是求f(m),考慮到模數大於0的情況比較多,所以考慮考慮求ij mod n==0的情況。。 然後其實從題目給的表中看出對一個a來說,他0的個數和gcd(a,n)有關,其實也很容易證明,對一個數a來說

【hdu 5728 PowMod】【數論】【尤拉函式】【尤拉降冪遞迴取模】【尤拉函式

【連結】 http://acm.hdu.edu.cn/showproblem.php?pid=5728 【題意】 n是無平方因子的數 定義k=∑mi=1φ(i∗n) mod 1000000007,求K^k^k^k......%p 【思路】 先尤拉性質求出k

函式字首和問題

1. 求前n個正整數的約數之和 即 . 解: 或  需要說明的是 是一種常見的表示形式。 當 時, 顯然只有個取值,當 時, ,顯然也只有個取值。當 = k (常數) 時,i的取值區間是 ,因此可以用 複雜度求解。 code: #inclu

【HDOJ5528】Count a * b(函式

題意:設f(i)為0<=x,y<=i-1且xy%i=0的(x,y)對數,g(i)為sigma f(j) [i%j==0] 給定n,求g(n),答案對2^64取模 T<=2e4,n<=1e9 思路:這題堅定了我要找一個專業數學手的決心…… x,y從[0,i-1]等價於從[1,i]

反演+函式--CF757E Bash Plays with Functions

傳送門 可以很容易推到 f_r(n) = sigema (d|n)  f_r-1(d) f_0(n) = 2^(n的質因子個數) 然後就不知道怎麼辦了 這是一個積性函式的應用小技巧 看出來f_0是一個積性函式,那麼f_r也是積性函式 證明積性函式可以把表示式拆成

HDU 5528 Count a * b (函式)*

#include<bits/stdc++.h> using namespace std; #define debug puts("YES"); #define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++) #def

(數論一)函式與狄利克雷卷

​ 今天做的一道題就是有關積性函式與狄利克雷卷積的,很懵逼。覺得有必要學一手了 一. 積性函式是什麼呢? ​ 對於函式f,對於任意的a,b互質,都有: f(a * b) = f(a) * f(b) ​ 這樣的函式f就稱為積性函式,若a,b不互質也滿足上述條

2018ACM-ICPC南京賽區網路賽: J. Sum(函式字首和)

J. Sum A square-free integer is an integer which is indivisible by any square number except 11. For example, 6 = 2 \cdot 36=2⋅3 is squa

【hdu 5728 PowMod】【數論】【尤拉函式】【尤拉降冪遞迴取模】【尤拉函式

【連結】 【題意】 n是無平方因子的數 定義k=∑mi=1φ(i∗n) mod 1000000007,求K^k^k^k......%p 【思路】 先尤拉性質求出k,再用尤拉降冪,A^B=A^B%phi(C)+phi(C)  (mod C)求出答案 ∑(i=1~

【HDU 5382】 GCD?LCM! (數論、函式

GCD?LCM! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 316    Accepted Submission(s): 200 O