快速幂
LL
kuaisumi(LL a
,LL b
,LL m
)
{
if(b
==0)
return 1;
if(b
%2==1)
return a
*kuaisucheng(a
,b
-1,m
)%m
;
else{
LL mul
=kuaisucheng(a
,b
/2,m
);
return mul
*mul
%m
;
}
}
快速乘
LL
kuaisucheng(LL a
,LL b
,LL m
)
{
LL res
=0;
while(b
)
{
if(b
&1)
res
=(res
+a
)%m
;
a
=(a
+a
)%m
;
b
>>1;
}
}
快速幂节省了时间复杂度,快速幂运用乘变加,既节省时间复杂度,也避免了数据的爆炸
转载请注明原文地址: https://mac.8miu.com/read-515769.html