这道题需要注意的是long long
class Solution {
public:
double myPow(double x, int n) {
if(n == 0) return 1;
if(x == 1) return 1;
bool bMinus = false;
long long iExp = n;
if(n < 0)
{
bMinus = true;
iExp = -iExp;
}
double res = 1;
while(iExp)
{
if(iExp & 1) res *= x;
x *= x;
iExp >>= 1;
}
if(bMinus) return 1.0/res;
else return res;
}
};