離散作業 中國剩餘定理和求Zp元素的逆

2021-10-04 22:16:07 字數 1392 閱讀 9045

某日因做離散作業需要計算zpz_

zp​中元素的逆,還需要求解中國剩餘定理的問題,所以直接寫了個python程式,寫成部落格留作紀念。

a=

input

("請輸入序列a:"

).split(

" ")

m=input

("請輸入序列m:"

).split(

" ")m=1

x=0for mi in m:

m*=eval

(mi)

defreturn_inverse

(a,b)

: x, y=a, b

sa, ta=1,

0 sb, tb=0,

1while y !=0:

r=x%y

if r==0:

break

q=x//y

s1=sa-q*sb

t1=ta-q*tb

x, y=y, r

sa,ta=sb, tb

sb,tb=s1,t1

return sb

for i in

range(0

,len

(a))

: x+=

eval

(a[i])*

(m/eval

(m[i]))

*return_inverse(m/

eval

(m[i]),

eval

(m[i]))

print

("x={}"

.format

(x))`

a, b=

input

("請輸入兩個互質的數:"

).split(

" ")

a=eval

(a)b=

eval

(b)x, y=a, b

sa, ta=1,

0sb, tb=0,

1while y !=0:

r=x%y

if r==0:

break

q=x//y

s1=sa-q*sb

t1=ta-q*tb

print

("&{}={}*{}+{}\\\\"

.format

(x,y,q,r)

)print

("&{}={}*{}+{}*{}\\\\"

.format

(r,s1,a,t1,b)

) x, y=y, r

sa,ta=sb, tb

sb,tb=s1,t1

輸出的片段可以直接貼上到latex的align*環境中。

中國剩餘定理 擴充套件中國剩餘定理

中國剩餘定理 對於求解一元不定方程組 的一種演算法叫做中國剩餘定理。又名孫子定理。其中m1,m2,m3.mk 為兩兩互質的整數,求x的最小非負整數解 令m mi 1 i n m是所有mi的最小公倍數 ti為同餘方程 ti m mi 1 mod mi 的最小非負整數解 則有乙個解 x ai m mi ...

中國剩餘定理

用來求解模數互質的同餘方程組,即求乙個數x,使得x除以n個模數分別為a1,a2,a3 an 注意這裡的除數必須要兩兩互質 得到n個餘數r1,r2,r3 rk。求這個數x.中國剩餘定理求的就是這個數x。求解過程 1 令p a1 s2 a3 an,ki p ai i從1到n 2 我們要找到這樣的數 di...

中國剩餘定理

中國剩餘定理介紹 在 孫子算經 中有這樣乙個問題 今有物不知其數,三三數之剩二 除以3餘2 五五數之剩三 除以5餘3 七七數之剩二 除以7餘2 問物幾何?這個問題稱為 孫子問題 該問題的一般解法國際上稱為 中國剩餘定理 具體解法分三步 找出三個數 從3和5的公倍數中找出被7除餘1的最小數15,從3和...