快速幂及例题
Posted frankyu-
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了快速幂及例题相关的知识,希望对你有一定的参考价值。
快速幂:
例:a^11=a^(2^0)*a^(2^1)*a^(2^3)
11的二进制是1011,有1为第一位,第二位,第四位,它们的权分别为0,1,3。所以可以把11拆分为2^0+2^1+2^3。
利用这个思想实现快速幂函数(c++) ULL代表unsigned long long
ULL quickpow(ULL a,ULL b){ ULL res=1; for(;b;b>>=1){ if(b&1) res*=a; a*=a; } return res; }
以上是关于快速幂及例题的主要内容,如果未能解决你的问题,请参考以下文章