ユークリッドアルゴリズム不定方程式を展開

 斧+ = GCDにより(  B)
       

このような方程式は一般解のためのユークリッドアルゴリズム拡張exgcdを取得するために使用することができます。

ユークリッドGCDを求める:GCD(A、B)は、GCD(B、%B)を= 
        

利用可能なBX +(%b)はY  = GCD(B、%b)は
        

根据
      a%b=a−(a/b)∗b 

可得
        bx+ay−(a/b)b∗y=gcd(b,a%b)  

簡略化が有するAY + bの(X-(A /   B)、Y)= GCD(B、%B)を
        

       X ' = 及び' = X - A / B

X ' + B Y ' = GのCのD B %のB < = > A X + B Y = G 、CのD B

によると、

      GCD(0)=

Bが0になるまで再帰的になって利用可能である
      斧+は= aで 

自明な解の集合導出することができるX = 1、Y = 0を 
          

これは再帰のセットは、溶液+ = GCDの組(a、b)が(得によってZaiwangホイAXと、次いで、自明な解を引き出すことができたX ' = Y Y ' = X - A / B y軸

一般ビュー不定方程式
= Cによって斧+ 

唯一満たしCの%のGCD(A、B) == 0 のみ溶液を。

フェルマーの小定理を解決合同方程式は、ユークリッドが求める拡大を模索するもを使用することができます
ax≡bmod nを<==>斧+ NY = Bを

なお、上記形態に変換されます

フェルマーの小定理:素数ができ上にpで割り切れる正の整数である、^(P-1)≡1(モッズp)があります

派生:A ^(P-1)= 1(MOD)P = *のA ^(P-2)≡1(MOD P)の逆元は、このよう^(P-2)であるので、満足するフェルマー少し定理は、直接すぐに電源を追求するために使用することができます

 

おすすめ

転載: www.cnblogs.com/Accepting/p/11351578.html