1到n对于质数p的逆元
inv[1]=1;
for(int i=2;i<=n;i++)
inv[i]=(p-p/i)*inv[p%i]%p;
质求单个数的逆元,当然费马小定理也可以 时间复杂度相同
int Get_inv(int n){
if(n==1)
return 1;
return (p-p/n)*(Get_inv(p%n))%p;
}
本文介绍了一种快速计算1到n对于质数p的逆元的方法,并提供了两种算法实现:一种是通过迭代的方式,另一种是递归的方式。这两种方法的时间复杂度相同。
1到n对于质数p的逆元
inv[1]=1;
for(int i=2;i<=n;i++)
inv[i]=(p-p/i)*inv[p%i]%p;
质求单个数的逆元,当然费马小定理也可以 时间复杂度相同
int Get_inv(int n){
if(n==1)
return 1;
return (p-p/n)*(Get_inv(p%n))%p;
}
1410
426

被折叠的 条评论
为什么被折叠?