Implement pow(x, n).
Solution:
Code:
<span style="font-size:14px;">class Solution {
public:
double helper(double x, int n) {
if (n == 1) return x;
double temp = helper(x, n/2);
if (n%2) return temp*temp*x;
else return temp*temp;
}
double pow(double x, int n) {
if (x == 1) return 1;
if (x == -1) return n%2?-1:1;
if (n == 0) return 1;
if (n < 0) return 1/helper(x, -n);
else return helper(x, n);
}
};</span>