尤拉函式與尤拉降冪

2022-06-08 19:39:08 字數 759 閱讀 3660

尤拉函式

對於正整數\(n\),尤拉函式是小於或等於\(n\)的正整數中與\(n\)互質的數的數目。

\(\varphi(1)=1\),除了1之外,所有正整數與它本身都不互質

對於質數\(p\),\(\varphi(p)=p-1\)

\(\sum_\varphi(d)=n\),其中\(d\)是\(n\)的因數

尤拉函式是積性函式,若\(m,n\)互質,則有\(\varphi(mn)=\varphi(m)\varphi(n)\)

通式:\(\varphi(x)=x\prod_^n(1-\frac)\) (\(p_1,p_2,\cdots,p_n\)為\(x\)的所有質因數)

模板一:求單個正整數的尤拉函式

時間複雜度\(o(\sqrt x)\)

模板題:hdu1286 找新朋友

int phi(int x)}}

if(x>1) ans=ans/x*(x-1);

return ans;

}

模板二:求區間內所有數的尤拉函式

時間複雜度\(o(n)\)

模板題:hdu2824 the euler function

const int maxn=500010;

int phi[maxn];

void get_phi(int n)(mod\ m)\),其中\(\varphi(m)\)是尤拉函式,\(a,k,m\)都是整數並且\(k\geq \varphi(m)\)

尤拉函式,擴充套件尤拉降冪

尤拉函式 phi n 表示下於n且與n互質的整數的個數。模板 include include include define il inline define maxn 200100 include define ll long long using namespace std 這個函式是求1 n內小...

Super A B mod C(尤拉降冪)

given a,b,c,you should quickly calculate the result of a b mod c.1 a,c 1000000000,1 b 10 1000000 input there are multiply testcases.each testcase,ther...

尤拉降冪學習

題目大意 a b mod c,其中b是乙個非常大的數,求其數值。演算法的實現過程 尤拉函式是指 對於乙個正整數n,小於n且和n互質的正整數 包括1 的個數,記作 n 尤拉函式的公式 x x 1 1 p1 1 1 p2 1 1 p3 1 1 p4 1 1 pn 其中p1,p2 pn為x的所有質因數,且...