逆元是什么呢?
若a∗x≡1(mod b),且a与b互质,那么我们就能定义:
x 为 a 的逆元,记为a的-1次方,所以我们也可以称 x为 a 在 mod b意义下的倒数。
普通求一个单独的逆元我们可以用扩展欧几里得(见上一篇),如果要求多个就可以用线性递推
wooo~图图来喽~
阿巴阿巴
https://vjudge.net/problem/%E6%B4%9B%E8%B0%B7-P3811
#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int maxn=3e6+5;
ll inv[maxn];
int main(){
inv[0]=0;
inv[1]=1;
int n,p;
cin>>n>>p;
printf("1\n");
for(int i=2;i<=n;i++)
inv[i]=(ll)(p-(p/i))*inv[p%i]%p,cout<<inv[i]<<'\n';
return 0;
}
相信大家可以懂,就酱紫,挥挥~