模逆元
参考资料
定义
如果线性同余方程 ,则 称为 在模 意义下的 逆元(Inverse),记为 。
快速幂法
根据费马小定理(Fermat's Little Theorem):
快速幂:Pow(a,mod-2)。
详见 快速幂。
扩展欧几里得算法
如果 ,说明存在整数 满足 。
扩展欧几里得算法:exgcd(a,mod)。
详见 最大公约数。
线性逆元
ll inv[N];
void init()
{
for(int i=1;i<N;i++)
{
inv[i]=i==1?1:(mod-mod/i)*inv[mod%i]%mod;
}
}
例题
给定两个整数 ,求 中所有整数在模 意义下的乘法逆元。()
保证 是质数。Code (1)
给定 个正整数 ,求它们在模 意义下的乘法逆元。
由于输出太多不好,所以将会给定常数 ,你要输出的答案为:
答案对 取模。Code (1)
给出一个有理数 ,求 的值。
这个值被定义为 的解。Code (1)
求同余方程 的最小正整数解。()Code (1)