QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2446|回复: 0
打印 上一主题 下一主题

一个乘法逆元的计算方法

[复制链接]
字体大小: 正常 放大
songls        

6

主题

3

听众

23

积分

升级  18.95%

  • TA的每日心情
    郁闷
    2023-12-11 09:00
  • 签到天数: 7 天

    [LV.3]偶尔看看II

    跳转到指定楼层
    1#
    发表于 2023-12-10 20:02 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    以下给出一个求乘法逆元的方法,主要是使用除数的积来求逆,供大家参考,如有不足,欢迎大家批评指正。& ~0 u# v" U& z( Y
    设 (a,n)=1  (ri,n)=1  (qi,n)=1  1≤i≤m
    7 y( [4 B* `" _/ }  r  a*r1≡q1 (mod n)
    9 D0 R4 |# F; k7 W# P# Z5 Z  q1*r2≡q2 (mod n)
    2 D0 Q) Y4 Y; m3 F# ~9 z$ K  q2*r3≡q3 (mod n)% r$ L0 Z% ~; Z; d  m
       .
    ( V9 E+ ~( M7 i( m! r   .
    . X3 f: c1 |3 Q# Q: p2 E2 f' Y1 o  .
    " l" I6 a' z. |+ l6 k+ b  qm-1*rm≡qm (mod n)1 I8 `' [4 `$ N. P2 F
    上述等式相乘,得:
    ) Y0 n) v9 k/ m5 c1 V! {, u% e4 l  a*(r1*r2*...*rm-1)*(q1*q2*...*qm)≡r1*r2*...*rm-1*rm (mod n) =>
    6 b, V8 l3 f" q( B( V8 p  a*(q1*q2*...*qm)≡rm (mod n)
    2 i1 N8 S, X8 P% i  如果对qi(1≤i≤m)进行如下的限定:
    & B$ P. _8 H! r' Z* O) V   a>|q1|>|q2|>...>|qi|>...>|qm-1|>|qm|& C1 {5 a" ^1 Y) @1 G; \: Z; E+ o: H  C
       则 qm=±1
    + L4 O% o1 p- }8 a$ V+ ?: _2 \; t  即 a与q1*q2*...*qm互逆$ S' h$ n" K% O6 q; I
      例 求28在299的逆0 d& O+ A% [9 Z3 K4 N" ^
         28*11≡9 (mod 299): }& j0 Q( y7 w1 e
         9*33≡-2  (mod 299)
    * q* x/ F7 n+ m     -2*-150≡1 (mod 299)
    / w2 y" M& k, h8 u- i" {  逆为:    11*33*-150≡-32 (mod 299)+ ^1 p) ~+ p" f5 l* V, _' c+ O
         28*-22≡-1 (mod 299)* V9 V+ v& E" Q7 t
      但该方法有个最大的问题,当(qi,n)>1时,该方法将无法继续往下计算逆。, b+ p* A0 B* z) U
    下面给出其中一个算法:: U% N& H; Y, S* Y" W) |
      1    输入a,n  
    0 i, A7 \5 J9 C/ j! F( H8 f9 @  2   resulte = 1   ; 保存逆的结果 ; L4 \9 w; M4 O- v. S# D
      3   r=n/a+1      ; 保证 r*a>n
    2 a, o8 l9 O/ I4 ^0 ]  4  q=r*a-n       ; 得到余数,该余数小于a6 u/ P- ?0 w1 H* |" x
      5  resulte=(resulte*r)%n   : ?3 e$ x' c* \( ]
      6  if q=1  then  print(逆为: resulte) return  resulte
    # O( A+ s5 l2 ?% S' [7 |3 f  7  if q=0 or q=a then  print(存在因子: a)  return a ;7 t2 Z, y$ w2 y( o
      8  a=q
    ( K' d! a4 J* O  9  goto 3& Z; J1 h/ y) c, B

    ! j5 g- u. b3 j7 S+ R# m& ?

    一个求乘法逆元的方法.pdf

    39.85 KB, 下载次数: 0, 下载积分: 体力 -2 点

    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-6-8 21:47 , Processed in 1.606555 second(s), 52 queries .

    回顶部