快速幂,龟速乘

lll gpow(lll a,lll b,lll p)
{
   lll res=0;
   while(b)
   {
   	if(b & 1) res+=a,res%=p;
   	a=a+a,a%=p;
   	b >>= 1;
   }
   return res;
}
lll qpow(lll a,lll b,lll p)
{
   lll res=1;
   while(b)
   {
   	if(b & 1) res=gpow(res,a,p)%p;
   	a=gpow(a,a,p),a%=p;
   	b >>= 1;
   }
   return res;
}

龟速乘,防快速幂炸 \(long long\) ,比普通乘法还慢。

posted @ 2024-03-29 15:49  ppllxx_9G  阅读(35)  评论(3编辑  收藏  举报