乘法逆元與費馬小定理

2021-07-11 21:10:23 字數 694 閱讀 4151

乘法逆元:我們知道(a

/b)%

m=(a

∗(1/

b))%

m 。令1/

b 等於

h ,那麼

h就是b關於m的乘法逆元,其實就是關於m的乙個相反數,b∗

h≡(1

%m)

那麼我們如何求乘法逆元呢

擴充套件歐幾里得演算法b

∗h≡(

1%m)

可以等價於b∗

x+m∗

y=1 ,那麼我們主需要呼叫歐幾里得演算法求解出來就可以了。

int cal(int a,int b)

費馬小定理

費馬小定理:假如m是素數,且h與m互質,那麼hm

−1≡(

1%m)

那麼聯立我們之前的a∗

h≡(1

%m)

得出乘法逆元h=

am−2

這個地方不能簡單呼叫pow這個庫函式,我們要自己寫乙個帶模的快速冪演算法。

int cal(int

x,int

m,const int mod)

return ans;

}

參考

乘法逆元 費馬小定理

我實在是太.才明白這個qwq 一 前置知識 定義1 給定正整數m,若用m除兩個整數a和b所得的餘數相同,稱a和b對模m同餘,記作a b mod m 並稱該式子為同余式 否則稱a和b對模m不同餘 二 乘法逆元 若整數b,p互質,並且b a,則存在乙個整數x,使得 a b a x mod p 稱x為b的...

費馬小定理 求乘法逆元

p3811 模板 乘法逆元 includeusing namespace std inline void write long long x if x 9 write x 10 putchar x 10 0 long long qpow long long n,long long m,long lo...

費馬小定理求逆元

求餘的概念 a b p a p b p p a b p a p b p p a b p a p b p p 為什麼要求逆元 對於一些題目,我們必須在中間過程中進行求餘,否則數字太大,電腦存不下,那如果這個算式中出現除法,我們是不是對這個算式就無法計算了呢?這時候就用到了逆元。費馬曾經說過 費馬小定理...