不是技巧题,直接套模板就行
快速幂
typedef long long ll;
ll fun(ll a,ll b,ll p)
{
ll ans=1;
while(b)
{
if(b&1)
ans=(ans*a)%p;
a=(a*a)%p;
b>>=1;
}
return ans;
}
快速乘
typedef long long ll;
ll ksc(ll x,ll y,ll mod)
{
return (x*y-(ll)((long double)x/mod*y)*mod+mod)%mod;
}
嵌套(当快速幂还超long long 时,里边在调用快速乘)
typedef long long ll;
ll ksc(ll x,ll y,ll mod)
{
return (x*y-(ll)((long double)x/mod*y)*mod+mod)%mod;
}
ll fun(ll a,ll b,ll p)
{
ll ans=1;
while(b)
{
if(b&1)
ans=ksc(ans,a,p);
a=ksc(a,a,p);
b>>=1;
}
return ans%p;
}