const int MOD=998244353;
const int PHI=MOD-1;
int qpow(int x,int e){
int ret=1;
for(;e;e>>=1,x=1ll*x*x%MOD) if(e&1) ret=1ll*ret*x%MOD;
return ret;
}
int _qpow(int x,int e){
int ret=1;
for(;e;e>>=1,x=1ll*x*x%PHI) if(e&1) ret=1ll*ret*x%PHI;
return ret;
}
这明显可以通过传参来合并成一个,但为什么要拆成两个呢?
不拆,在本地很快,但在洛谷就很慢,慢至少 100 倍。