0
点赞
收藏
分享

微信扫一扫

【代码模板】快速幂(递归)

魔都魅影梅杜萨 2022-02-19 阅读 67
c++
class Solution {
public:
    double myPowHelper(double x, long n){
        if(n==0) return 1;
        double y=myPowHelper(x,n/2);
        return n&1?y*y*x:y*y; 
    }
    double myPow(double x, int n) {
        long n_long=n;//INT_MIN绝对值比INT_MAX大1,取反会溢出
        return  n_long>0?myPowHelper(x, n_long):1/myPowHelper(x, -n_long);
    }
};
举报

相关推荐

0 条评论