pow


  • 0
    S

    double myPow(double x, int n) {

     if(x==1.0 )
            return 1;
        
     if(x==-1.0)
            return n%2==0 ? 1 : -1;    
        
    if(n==INT_MIN || n==INT_MAX)
            return 0;
    if(n==0) return 1;
    if(n<0){
        n = -n;
        x = 1/x;
    }
    return n%2==0 ? myPow(x*x, n/2) : x*myPow(x*x, n/2);
    

    }


Log in to reply
 

Looks like your connection to LeetCode Discuss was lost, please wait while we try to reconnect.