1 class Solution { 2 public: 3 double pow(double x, int n) { 4 // Start typing your C/C++ solution below 5 // DO NOT write int main() function 6 if(n==0) 7 return 1; 8 if(x==0) 9 return 0; 10 if(x==1) 11 return 1; 12 if(x==-1) 13 return n%2?-1:1; 14 if(n<0) 15 { 16 n=-n; 17 int i; 18 double d=1; 19 for(i=0;i<n;i++) 20 { 21 d=d/x; 22 } 23 return d; 24 } 25 if(n>0) 26 { 27 int i; 28 double d=1; 29 for(i=0;i<n;i++) 30 { 31 d*=x; 32 if(d==0) 33 return 0; 34 } 35 return d; 36 } 37 } 38 };