尤拉函式的定義:對正整數n,尤拉函式是小於等於n的數中與n互質的數的數目。
我們令f(n)為尤拉函式
(1).其中當n=1時,f(1)=1,沒有任何實質的意義。
(2).特別的如果兩個素數p和q,且n=pq,則f(n)=(p-1)(q-1);
(3).若n是質數p的k次冪,f(n)=p^k-p^(k-1)=(p-1)p^(k-1),因為除了p的倍數外,其他數都跟n互質。
(4).f(n)稱為n的尤拉函式值。
(5).尤拉函式是積性函式:若m,n互質,
f(mn)=f(n)f(m).
(6).當n為奇數時,f(2n)=f(n).
(7).若n為質數則f(n)=n-1。
以下是關於尤拉函式的**
//線性打素數表,求尤拉值
#include
#include
#include
using
namespace
std;
const
int maxn=3000001;
int prime[maxn];//儲存素數
bool vis[maxn];//初始化
int phi[maxn];//尤拉函式
void prime(int n)
for(int j=0;j1;
if(i%prime[j]==0)//關鍵
else
phi[k]=phi[i]*(prime[j]-1);}}
}int main()
if(n>1)
rea=rea-rea/n;
return rea;
}int main()
return
0;}
//求由a到b的尤拉總值
#include
#include
#include
using
namespace
std;
const
int maxn=3000001;
int prime[maxn];//儲存素數
bool vis[maxn];//初始化
int phi[maxn];//尤拉函式
void prime(int n)
for(int j=0;j1;
if(i%prime[j]==0)//關鍵
else
phi[k]=phi[i]*(prime[j]-1);
} }
} int main()
}
數論 尤拉函式
尤拉函式,用 n 表示 尤拉函式是求小於等於n的數中與n互質的數的數目 求n的尤拉函式時我們可以減去它的所有素數因子以及它的倍數 12 12 2 2 3 素數因子有2 3所以我們減掉2,3的倍數 2的倍數 2,4,6,8,10,12 3的倍數 3,6,9,12 顯然2,3存在重複項6,12 根據容斥...
數論 尤拉函式
ll eular ll n if n 1 ans ans n n 1 return ans 尤拉函式的一些性質 當m,n互質時,有phi m n phi m phi n 若i p 0,有phi i p p phi i 對於互質x與p,有x phi 1 mod p 因此x的逆元為x phi 1 即尤拉...
數論 尤拉函式
大佬已經講的很清楚了,證明非常清晰 互質 兩個數的最大公約數為 1 稱這兩個數互質 求乙個數的尤拉函式 利用公式 int phi int n if a 1 ans ans n n 1 return ans 方法二 利用線性篩求多個數的尤拉函式 const int ma 1e5 5 bool book...