尤拉函式介紹:
尤拉函式,在數論中用於求解 [ 1 , n ] 中與 n 互質數個數 的函式,因為研究者為尤拉,故命名為尤拉函式。
通式:φ(x) = x(1-1/p1)(1-1/p2)(1-1/p3)(1-1/p4)…..(1-1/pn),其中p1, p2……pn為x的所有質因數,x是不為0的整數。
φ(1) = 1(唯一和1互質的數(小於等於1)就是1本身)。 (注意:每種質因數只乙個。比如 12 = 2*2*3 那麼 φ(12) = 12 * (1-1/2) * (1-1/3)=4 )
若 n = p^k ( p為 質數 ),則 φ(n) = p^k-p^(k-1) = (p-1)p^(k-1),( 除 p 的倍數外,其他數均為 p 的互質數 )。
若n = p( p 為質數),則 φ(n) = p-p^(1-1) = p-1。
尤拉函式性質:
1、 φ(mn) = φ(m) φ(n)
2、若n為奇數,φ(2n) = φ(n)。
int euler(int n)
if(n>1)
ret=ret/n*(n-1);
return ret;
}
素數篩選:
#define size 1000001
int euler[size];
void init()
{ memset(euler,0,sizeof(euler));
euler[1]=1;
for(int i=2;i
尤拉函式模板
對正整數n,尤拉函式是少於或等於n的數中與n互質的數的數目。例如euler 8 4,因為1,3,5,7均和8互質。euler函式表達通式 euler x x 1 1 p1 1 1 p2 1 1 p3 1 1 p4 1 1 pn 其中p1,p2 pn為x的所有素因數,x是不為0的整數。euler 1 ...
尤拉函式模板
對正整數n,尤拉函式是少於或等於n的數中與n互質的數的數目。例如euler 8 4,因為1,3,5,7均和8互質。euler函式表達通式 euler x x 1 1 p1 1 1 p2 1 1 p3 1 1 p4 1 1 pn 其中p1,p2 pn為x的所有素因數,x是不為0的整數。euler 1 ...
尤拉函式模板
尤拉函式的定義 在數論中,對於正整數n,少於或等於n 1,n 且與n互質的正整數 包括1 的個數,記作 n 函式的值 x x 1 1 p 1 1 1 p 2 1 1 p 3 1 1 p 4 1 1 p n 其中p 1 p 2 p n 為x的所有質因數 x是正整數 1 1 唯一和1互質的數,且小於等於...