题目描述
点这里
思路分析
快速幂裸题
代码实现
class Solution {
public:
double myPow(double x, int n) {
typedef long long ll;
bool neg=false;
if(x==1.0000) return 1.0;
if(n<0) neg=true;
ll k=abs(ll(n));
double res=1;
while(k){
if(k&1)res=res*x;
x=x*x;
k>>=1;
}
if(neg) res=1/res;
return res;
}
};