50. Pow(x, n)
Implement pow(x, n).
Example 1:
Input: 2.00000, 10 Output: 1024.00000
Example 2:
Input: 2.10000, 3 Output: 9.26100
class Solution {
public:
double myPow(double x, int n)
{
long nn = n;
if(nn == 0)
return 1;
else if(x == 1)
return x;
else if(x==-1)
return ( n % 2 == 0) ? 1 : -1;
else if(nn < 0)
{
x = 1 / x;
nn = -nn;
}
double sum = 1.00000;
for (long i = 1; i <= nn; i++)
{
sum = sum * x;
if(abs(sum) < 0.000000001)
return 0.00000;
}
return sum;
}
};