快速幂

理解

一般的我们求a^b可以跑一个for或者pow函数,这种在遇到大的数据范围很浪费时间或者存不下。
这时候就可以使用快速幂进行求解

快速幂

快速幂使用了二进制的思想,假如b=11 二进制 1011 快速幂的作用就是给1与1之间的距离缩短了

int p_pow(int a,int b,int mod)
{
	int c=1;
	while(b)
	{
		if(b&1)c=(c*a)%mod;
		a=(a*a)%mod;
		b>>=1;
	}
	return c;
}
全部评论

相关推荐

10-30 22:18
已编辑
毛坦厂中学 C++
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务