#include<iostream>
using namespace std;
/*
//二分法求幂 for :5^9 = 5^4 * 5^4 *5;
int pow2( int a, int b )
{
int r = 1, base = a;
while( b != 0 )
{
if( b % 2 )
r *= base; //*5
base *= base; //base = 5 * 5;
b /= 2; //在此已经二分了
}
cout<<r;
return r;
}*/
/*
//常规求幂
int pow1( int a, int b )
{
int r = 1;
while( b-- )
r *= a;
return r;
}
*/
/*
//位运算快速求幂
int pow3( int a, int b )
{
int r = 1, base = a;
while( b != 0 )
{
if( b & 1 ) //如果其两个变量的真值都为“真”,其结果为“真”,否则其结果为“假”。
r *= base;
base *= base;
b >>= 1;
}
return r;
}
*/
int main(){
int a, b;
cin>>a>>b;
pow2(a,b);
return 0;
}
快速幂
最新推荐文章于 2025-04-13 23:00:00 发布