数论-中国剩余定理

"""
中国剩余定理(用到了扩展欧几里得算法求逆元):设自然数m1, m2, m3 ... mn两两互质, 并记N = m1 * m2 * m3 ... mn, 则同余方程组:
x ≡ b1(mod m1)
x ≡ b2(mod m2)
...
x ≡ bn(mod mn)
有唯一解x=sum(xi * bi) % N (1 <= i <= n)

求解过程:
1.令上述同余方程组中某个等式中的余数b=1, 其余等式的余数等于0, 形成一个新的同余方程组:
x1 ≡ 0(mod m1)
x1 ≡ 0(mod m2)
...
x1 ≡ 1(mod mi) (1 <= i <= n)
...
x1 ≡ 0(mod mn)
求出该同余方程组的解x1:
根据其中n-1个等式xi ≡ 0(mod mz) (z != i)
可以知道: x1是N // mi的倍数, 令Mi = N // mi, 则令x1 = Mi * t, 那么求方程组的解就可以转
换为求x1 ≡ 1(mod mi) (1 <= i <= n)等式的解, 相当于求x1 + mi * k = 1的解, 再进行转换为:
Mi * t + mi * k = 1, 也就是求Mi模mi意义下的逆元t, 逆元可以用扩展欧几里得算法求得, Mi已知,
t也求得, 那么该同余方程组的解x1 = Mi * t
2.重复上述1的操作, 求出n个同余方程组的解x1~xn
3.最后就可以得到原同余方程组的解x=sum(xi * bi) % N (1 <= i <= n)
注意: 中国剩余定理要求除数mi两两两互质, 即gcd(mi, mj)=1(i!=j, 1<=i, j,=n), 比如3个等式的除数为3, 8, 4时:
(3, 8), (3, 4)都互质, 但是(8, 4)不互质不满足剩余定理的条件
"""

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

好无聊啊,烦死

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值