求逆元[数论]

本文介绍了数论中的逆元概念,特别是在模运算中的应用。通过实例展示了如何计算逆元,包括使用扩展欧几里德算法和指数取模方法。同时,深入探讨了扩展欧几里德算法的原理及其在解决线性方程中的作用,提供了相关代码模板。
摘要由CSDN通过智能技术生成

这两天都没什么东西做出来的../.T_T

第一次接触到逆元是11年大连的最后一题.囧啊,不会..什么都不会,网赛z怎么破

比如:  (8/2)%5 
我们求a*b*c*d*e*f*g..../z 前面乘积部分LL存不下所以要一边mod一边乘
最后处理到除z时,不一定能除尽
比如前面那个例子,8/5=3,3除不尽2就乘以2%5的逆元在%5
2%5的逆元=2^(5-2)=8 这是计算逆元的一种方法,后面讲。还有一直哦你方法是扩展欧几里德算法也是后面详细讲。
(3*8)%5=4=4%5

===

在计算(a/b)%Mod时,往往需要先计算b%Mod的逆元p(b有逆元的条件是gcd(b,Mod)==1,显然素数肯定有逆元),然后由(a*p)%Mod得结果c。这里b的逆元p满足(b*p)%Mod=1。先来简单证明一下:
(a/b)%Mod=c;    (b*p)%Mod=1;    ==》   (a/b)*(b*p) %Mod=c;    ==》    (a*p)%Mod=c;


从上面可以看出结论的正确性,当然这里b需要是a的因子。接下来就需要知道根据b和Mod,我们怎么计算逆元p了。扩展欧几里德算法,大家应该都知道,就是已知a、b,求一组解(x,y)使得a*x+b*y=1。这里求得的x即为a%b的逆元,y为b%a的逆元(想想为什么?把方程两边

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值