码迷,mamicode.com
首页 > 其他好文 > 详细

(数论)简单总结求逆元的几种方法

时间:2018-09-19 01:19:45      阅读:706      评论:0      收藏:0      [点我收藏+]

标签:回溯   mat   mod   次方   frame   素数   简单   a*   数通   

逆元(Inverse element),如a?b1(modp),那么a,b互为模p意义下的逆元,则p|(a/c-b*c)(即a/c与b*c同余)。

常用的求逆元方法有

1.费马小定理

  若p为素数,且gcd(a,p)=1,则a^(p-1)1(mod p),即a*a^(p-2)≡1(mod p),故a的逆元为a^p-2。

2.拓展欧几里德算法(递推再回溯)

  当gcd(A,B)|C时,可求二元一次方程Ax+By=C的整数通解。

3.逆元线性筛

  递推公式:inv[i]=inv[p % i] * (p - p / i) % p;

  (注意:p为质数!)

4.一般公式(条件b|a)【并没有求逆元,而是将等式化为了另一形式】

  a / b mod m=a mod (m * b) / b;

 

(数论)简单总结求逆元的几种方法

标签:回溯   mat   mod   次方   frame   素数   简单   a*   数通   

原文地址:https://www.cnblogs.com/Ekalos-blog/p/9672264.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!