刚才看了个大佬的逆元博客,
https://www.cnblogs.com/shuaihui520/p/8972903.html
为什么
int inv(int n) {
return qpow(n, mod - 2) % mod;
}
求出的逆元结果和我递推出来 ifac 的不太一样……QWQ?
inline void init() {
fac[0] = ifac[0] = 1;
for (int i = 1; i <= 1000000; i++) fac[i] = fac[i-1] * i % mod;
for (int i = 1; i <= 1000000; i++) ifac[i] = qpow(fac[i], mod - 2) % mod;
}
mod = 998244353
是我的理解有问题吗QAQ?
快速幂在这:
int qpow(int a, int b) {
int ans = 1;
while (b > 0) {
if (b & 1) ans = ans * a % mod;
a = a * a % mod;
b >>= 1;
}
return ans;
}