实现 pow(x, n) ,即计算 x 的 n 次幂函数。
示例 1:
输入: 2.00000, 10
输出: 1024.00000
示例 2:
输入: 2.10000, 3
输出: 9.26100
示例 3:
输入: 2.00000, -2
输出: 0.25000
解释: 2-2 = 1/22 = 1/4 = 0.25
说明:
- -100.0 < x < 100.0
- n 是 32 位有符号整数,其数值范围是 [−231, 231 − 1] 。
import sys
class Solution(object):
def myPow(self, x, n):
"""
:type x: float
:type n: int
:rtype: float
"""
temp=1
num=bin(abs(n))[2:]#将他变成二进制形式
if n>(2147483647):
return sys.maxsize
elif n<-2147483647:
if abs(x)==1:
return 1.0
return 0.0
if n==0:
return temp
else:
j=0
for i in range(len(num)-1,-1,-1):
if num[i]=='0':
pass
else:
temp*=(x**(2**j))
j+=1
return 1/temp if n<0 else temp
1161

被折叠的 条评论
为什么被折叠?



