1. 程式人生 > >【積性函數基礎學習】

【積性函數基礎學習】

sdn 前綴 htm 乘法 style rdquo ram col 整除

積性函數基礎學習


1. 什麽是積性函數?

積性函數的兩個定義:

(1) 積性函數:對於任意互質的整數a和b有性質f(ab)=f(a)f(b)的數論函數.

(2) 完全積性函數:對於任意整數a和b有性質f(ab)=f(a)f(b)的數論函數.

觀察以上對積性函數的定義,我們可以找出關於此類函數的特點:

(1) 在積性函數的定義f(ab)=f(a)*f(b)中,要求a和b都是整數.

(2) 對於普通的積性函數而言,存在額外的條件,要求a和b都互質(GCD(a,b)==1).

(3) 所有積性函數滿足f(ab)=f(a)*f(b)

的運算規則.


2. 積性函數有什麽性質?

性質一:

與算術基本定理有關.

若將n表示成質因子分解式 技術分享 則有 技術分享 給這句話再多添幾筆,就是: 這裏的意思是f(ab)=f(a)*f(b)其實是可以通過唯一分解定理推廣成f(abcd...)=f(a)*f(b)*f(c)*f(d)*...(a,b,c,d...之間兩兩互質)的形式的.關於這個性質,一種最簡單的理解是,我們其實可以將右式的f(a)*f(b)*f(c)*f(d)*...的任意兩個函數化成一個函數(容易看出這兩個函數是滿足積性函數運算規則的),每一步操作右邊就會少一個函數,最終右式會只下剩f(A)*f(B)這兩個函數(且A*B==abcd...),將其帶回原式,並進行一定的變換,整個式子就會又回到了f(ab)=f(a)*f(b)的形式.

性質二:

f為積性函數且有 技術分享f為完全積性函數。

3.有哪些積性函數?

積性:

  φ(n) -歐拉函數,計算與n互質的正整數之數目

  μ(n) -莫比烏斯函數,關於非平方數的質因子數目

  gcd(n,k)-最大公因子,當k固定的情況

  d(n) -n的正因子數目

  σ(n) -n的所有正因子之和

  σk(n)-因子函數,n的所有正因子的k次冪之和,當中k可為任何復數。

  1(n) -不變的函數,定義為 1(n) = 1 (完全積性)

  Id(n)-單位函數,定義為 Id(n) = n(完全積性)

  Idk(n)-冪函數,對於任何復數、實數k,定義為Idk(n) = n^k(完全積性)

  ε(n) -定義為:若n = 1,ε(n)=1;若 n > 1,ε(n)=0。別稱為“對於狄利克雷卷積的乘法單位”(完全積性)

  λ(n) -劉維爾函數,關於能整除n的質因子的數目

  γ(n),定義為γ(n)=(-1)^ω(n),在此加性函數ω(n)是不同能整除n的質數的數目

另外,所有狄利克雷特征均是完全積性的[1]

非積性:

  馮·曼戈爾特函數:當n是質數p的整數冪,Λ(n)=ln(p),否則Λ(n)=0

  不大於正整數n的質數的數目π(n)

  整數拆分的數目P(n):一個整數能表示成正整數之和的方法的數目[2]


4.積性函數實戰!

例題1:[Hdu1452]Happy 2004


資料來源&推薦博客:

(1)百度百科:https://baike.baidu.com/item/%E7%A7%AF%E6%80%A7%E5%87%BD%E6%95%B0/8354949?fr=aladdin

(2)博客|淺談一類積性函數的前綴和(已經全部是更後面的知識了,轉載):http://blog.csdn.net/skywalkert/article/details/50500009

(3)博客|積性函數、線性篩、莫比烏斯反演和一堆亂七八糟的題目:http://jcvb.is-programmer.com/posts/41846.html

【積性函數基礎學習】