pow(x,n)
1 class Solution { 2 public: 3 4 double pow(double x, int n) { 5 // Start typing your C/C++ solution below 6 // DO NOT write int main() function 7 if( abs(x-1) == 0 || (abs(x+1) ==0 && n%2 == 0)) return 1.00000; 8 if( abs(x+1) == 0 && n%2 == 1) return -1.00000; 9 if( n == 0 ) return 1; 10 if( n < 0 ) return 1/pow(x, abs(n)); 11 if( n%2 == 0 ){ double t = pow(x, n/2); return t*t;} 12 if( n%2 == 1 ) { double t = pow(x, n/2); return t*t*x; } 13 } 14 };
posted on 2013-09-08 10:46 jumping_grass 阅读(137) 评论(0) 收藏 举报
浙公网安备 33010602011771号