欧拉定理
代码:(求单个数字的欧拉函数)
链接: https://www.cnblogs.com/huangming-zzz/p/10664381.html.
代码;
int Euler(int n) {
int ans = n;
for(int i = 2; i * i <= n; ++i) { //注1
if(n % i == 0) {
ans = ans - ans/i; //x(1-1/p1)的变形
while(n % i == 0) n /= i; //注2
}
}
if(n != 1) ans = ans - ans/i; //注3
return n;
}//注解见原博客
线性逆元
inv[1]=1;
for(int i=2;i<=n;++i)
inv[i]=MOD-(long long)MOD/i*inv[MOD%i]%MOD;