定義
乘法逆元是一個十分有用的東西。
給定
就是說求
意義
在
可以由此取整
求法
費馬小定理
求解
我們可以通過費馬小定理,得:
所以:
線性遞推
int n,p,f[3000010];
int main()
{
n=read();
p=read();
printf("%d\n",f[1]=1);
fr(i,2,n)
printf("%d\n",f[i]=(ll)(p-p/i)*f[p%i]%p);
rt 0;
}
練手題
Luogu P3811
需要快速冪
注:
程序中
int n,p;
int main()
{
n=read();
p=read();
fr(i,1,n)
printf("%d\n",power(i,p-2,p));
rt 0;
}