代码拉取完成,页面将自动刷新
class Solution
{
public:
double pow(double x, int n)
{
long long index = n;
double result = 0;
int flag = 1;
if (x<0 && n%2!=0)
x = -x, flag = -1;
if (index < 0)
result = powI(x, -index);
else
result = powI(x, index);
if (index < 0) return 1/result*flag;
else return result*flag;
}
double powI(double x, long long n) // x>0, n>=0
{
if (n == 0)
return 1;
else if (n == 1)
return x;
else if (n == 2)
return x*x;
else
{
if (n%2==0)
{
double mid = powI(x, n/2);
return mid*mid;
}
else {
double mid = powI(x, (n-1)/2);
return mid*mid*x;
}
}
}
};
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。