Pow(x, n)
Problem
Implement pow(x, n), which calculates x
raised to the power n
(i.e., xn
).
Solution Approach
Click - to see solution code
- C++
class Solution {
public:
double myPow(double x, int m) {
long double a = x;
long double ans = 1;
int nn = m;
long long n = abs(m);
while (n) {
long long bit = (1ll & n);
if (bit) {
ans *= a;
}
a *= a;
n >>= 1;
}
if (nn < 0) {
ans = 1.0 / ans;
}
return ans;
}
};