b的模mod逆元 = b ^ (m-2)

2019-04-13 13:48发布

 http://blog.csdn.net/mys_c_k/article/details/78935830 除法取模逆元,扩展欧几里得,费马小定理[数学]
三、费马小定理 假如p是质数,且gcd(a,p)=1,那么 a(p-1)≡1(mod p) 如果求解 a / b mod m 求 b 的模m乘法逆元,若b , m互质 则 k* b mod m = 1 且 b ^ (m-1) mod m = 1 所以 k* b = b ^ (m-1) 可直接得出b的模m乘法逆元为 b ^ (m-2) 在算法中常模1e9+7为质数,可用费马小定理转换。 #define inv(x) fast_pow(x,mod-2) int fast_pow(int x,int k) { if(k==0) return 1; if(k==1) return x%mod; int ans=fast_pow(x,k>>1); ans=(lint)ans*ans%mod; if(k&1) ans=(lint)ans*x%mod; return ans; }