中國剩餘定理

2022-05-02 08:15:11 字數 732 閱讀 8124

前面我們已經學習了求解單個線性模方程,如果有多個方程,變數還是只有乙個,該怎麼辦呢?

可以考慮用中國剩餘定理(chinese remainder theorem)。假定有方程組$x\equiv a_i(mod \ m_i)$,且所有模$m_i$兩兩互素。令$m$為所有$m_i$的乘積,$w_i=m/m_i$,則$(w_i,mi)=1$。用擴充套件歐幾里得演算法可以找到$p_i$和$q_i$使得$w_i p_i + m_i q_i = 1$。然後令$e_i = w_i p_i$,則方程組等價於單個方程$x\equiv e_1 a_1 + e_2 a_2 + \cdots + e_n a_n(mod \ m)$.換句話說,在模m的剩餘系下,原方程組有唯一解。

不難驗證$x=  e_1 a_1 + e_2 a_2 + \cdots + e_n a_n$是乙個解(具體見拉格朗日插值法),把等式$w_i p_i + m_i q_i = 1$兩邊模$m_i$後立即可得到$e_i \ mod\ m_i = 1$,而對於不等於$i$的$j$,$w_i$是$m_j$的倍數(想一想,為什麼),因此$e_i \ mod\ m_j = 0$。這樣,$x_0$對$m_i$取模時,除了$e_i a_i$這一項餘數為$ 1 \times a_i = a_i$之外,其餘項的餘數均為0.**如下:

//

n個方程:x=a[i](mod m[i])

ll china(int n, int* a, int*m)

return (x + m) %m;

}

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

中國剩餘定理 對於求解一元不定方程組 的一種演算法叫做中國剩餘定理。又名孫子定理。其中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和...