中国剩余定理 CRT

CRT:某一范围整数可以通过它的一组剩余类数来重构,这组剩余类数是对该整数用一组两两互素的整数取模得到。

功能:使得模M的大数运算转化到更小的数上来进行运算,当M为150位或150位以上时,这种方法非常有效,但我们需要事先分解M

 上面说的有点悬乎,那我们举个例子看看:

Z10(0,1,2,3....9)中的10个整数可通过它们对2和5(10的两个因子)取模所得的两个余数来重构。假设已知十进制数x的余数r2=0且

r5=3,即 x mod 2=0 且x mod 5=3,则x是Z10中的偶数且被5除余3,故唯一解为 x=8

 

再举个正式的CRT实例,经常用到,掌握下面这个例子CRT基本也就掌握了

将973 mod 1813表示为模37和49的两个数。

我们定义: m1=37, m2=49, M=1813, A=973

先分解M,则M1=49 且M2=37,

再利用扩展的欧几里得算法有M1^-1=34 mod M1且 M2^-1=4 mod M2, 每个Mi和Mi^-1只需计算一次就行,

对37和49取模,因为 973 mod 37=11,972 mod 49=42, 所以973可以表示为(11,42)

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值