尤拉函式篇

2022-03-03 09:29:25 字數 1646 閱讀 3075

尤拉函式:

尤拉函式在oi中是個非常重要的東西,不知道的話會吃大虧的.

尤拉函式用希臘字母φ表示,φ(n)表示n的尤拉函式.

對φ(n)的值,我們可以通俗地理解為小於n且與n互質的數的個數(包含1).

尤拉函式的一些性質:

1.對於素數p, 

φ(p)=p-1,

對於對兩個素數p,q 

φ(pq)=pq-1

尤拉函式是積性函式,但不是完全積性函式.

證明:函式的積性即:若m,n互質,則φ(mn)=φ(m)φ(n).由「m,n互質」可知m,n無公因數,所以φ(m)φ(n)=m(1-1/p1)(1-1/p2)(1-1/p3)…(1-1/pn)·n(1-1/p1')(1-1/p2')(1-1/p3')…(1-1/pn'),其中p1,p2,p3...pn為m的質因數,p1',p2',p3'...pn'為n的質因數,而m,n無公因數,所以p1,p2,p3...pn,p1',p2',p3'...pn'互不相同,所以p1,p2,p3...pn,p1',p2',p3'...pn'均為mn的質因數且為mn質因數的全集,所以φ(mn)=mn(1-1/p1)(1-1/p2)(1-1/p3)…(1-1/pn)(1-1/p1')(1-1/p2')(1-1/p3')…(1-1/pn'),所以φ(mn)=φ(m)φ(n).

即φ(mn)=φ(n)*φ(m)只在(n,m)=1時成立.

2.對於乙個正整數n的素數冪分解n=p1^q1*p2^q2*...*pn^qn.

φ(n)=n*(1-1/p1)*(1-1/p2)*...*(1-1/pn).

3.除了n=2,φ(n)都是偶數.

4.設n為正整數,∑φ(d)=n (d|n).

5.尤拉降冪公式:

(φ(c)表示c的尤拉函式值)

下面為求單個尤拉函式的**(c++):

ll eular(ll m)

}if(a>1) res=res/a*(a-1);

return res;

}如果求phi[1] phi[2] phi[3].....phi[n]**如下:

int phi[maxn];

void get_phi(int n)

}對於降冪公式的應用,我有一篇exponial的題目(求 (n)=

n(n − 1)(n − 2)⋯21

);**如下:

1 #include2 #include3 #include4

using

namespace

std;

5 typedef long

long

ll;6

ll n,m;78

ll eular(ll m)919

}20if(a>1) res=res/a*(a-1

);21

return

res;22}

2324

ll fast_mod(ll x,ll n,ll m)

2533

return

res;34}

3536

ll work(ll n,ll m)

3750

return

ans;51}

5253

intmain()

5459

return0;

60 }

view code

尤拉函式 尤拉定理

尤拉函式 對正整數 n,尤拉函式 是小於等於 n的數中與 n互質的數的數目 此函式以其首名研究者尤拉命名 euler so totientfunction 它又稱為 euler stotient function 函式 尤拉商數等。例如 8 4,因為 1,3,5,7均和8 互質。注 n為1時尤拉函式...

尤拉函式 尤拉定理

尤拉函式 設 n 為正整數,則 1,2,n 中與 n 互素的整數的個數計作 n 叫做尤拉函式。設 p 是素數,p p 1設 p 是素數,pa pa p a 1 設 p,q 是不同的素數,n q p,n p q 即 n p 1 q 1 設 m,n 是兩個正整數,且 m,n 1,若 n m n,n m ...

尤拉函式尤拉篩

尤拉函式求小於等於n與n互質的數的個數 複習時發現這個知識點竟然沒有整理 n為素數即為n 1 除了其本身 n為素數的倍數 ola sushu j i ola i sushu j else ola sushu j i ola i sushu j 1 include include include in...