快速幂模板

Posted allinoo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了快速幂模板相关的知识,希望对你有一定的参考价值。

	//快速幂算法模板
	ll a, b;//a为底数,b为幂
	cin >> a >> b;
	//假设目标:求a的b次方对100000007取模的结果
	ll mod = 100000007;ll r = 1;//r表示result(结果)
	while (b)
	
		if (b & 1)
		
			r = (r*a) % mod;//记录当指数为奇数时分离出来的底数一次方
		
		b >>= 1;//右移一位,将指数分为两半
		a = (a*a) % mod;//底数做平方运算
	
	cout << r;

仅为个人总结模板记录
详细参考原文博主详解页面https://blog.csdn.net/qq_19782019/article/details/85621386?ops_request_misc=%7B%22request%5Fid%22%3A%22160638993119724827675717%22%2C%22scm%22%3A%2220140713.130102334…%22%7D

以上是关于快速幂模板的主要内容,如果未能解决你的问题,请参考以下文章

x的n次方叫啥函数,n叫指数,x叫啥?另外啥叫幂函数?谢谢好心人。

快速幂模板

快速幂模板

牛客-开心的涂刷——数学分析+快速幂取模问题

快速幂求解

常用算法模板 | 快速幂