ll mod;
ll x,p;
ll fpow(ll x,ll p){
ll res=1;
for(;p;p>>=1,x=x*x%mod){if(p&1)res=res*x%mod;}
return res%mod;
}
顺便说一下:
ll fpow(ll x,ll p){
ll res=1;
for(;p;p>>=1,x=x*x%mod){if(p&1)res*=x%mod;}//wrong
return res%mod;
}
这样写是不行的,因为res可能会在不断更新中溢出!!