说到中国剩余定理就不能不提一些前期的一些知识点:
1.利用欧几里得算法求整数系数已从不定方程ax+by = c的解:
对于这个不定方程的解有两种程序:
(1)无递归的实现方式:
(2)递归的实现方式:
2.求 mod m 的逆元素算法:
定理:对整数a,m(m>0),如果存在整数b,满足ab≡1(mod m),那么称b是a的模m乘法逆元。
也有两种方法来求解逆元元素:
(1)利用扩展欧几里得算法来求解:
(2)利用无递归的程序:
3.中国剩余定理的内容如下:
设m
1,m
2,....,m
n 是两两互素的n个正整数,记m=m
1m
2....m
n,M
i = m/m
i,1<=i<=n,那么,下列模线性方程组:
x ≡ b
1(mod m
1)
x ≡ b
2(mod m
2)
.
.
.
x ≡ b
n(mod m
n)
的解为x
0 = (b
1M
1y
1 + b
2M
2y
2 + b
3M
3y
3 + ... + b
nM
ny
n)mod m,其中,y
i是M
iy
i ≡ 1(mod m
i)的解,i=1,2,3...,n.
中国剩余定理程序如下:
总体程序实现如下: