错误的快速幂:
int binpow(int a,int b,int MOD){
int res=1;
while(b>0){
if(b&1) res=res*a%MOD;
a=a*a%MOD;
b>>=1;
}
return res;
}
正确的快速幂:
int binpow(int x,int y,int MOD){
int res=1;
int base=x%MOD;
while(y){
if(y&1) res=res*base%MOD;
base=base*base%MOD;
y>>=1;
}
return res;
}
警钟长鸣