x power to y
题目描述
x ** y
解题方法
if y % 2 == 0: (x y/2) 2 else: (x y/2) 2 * x
Solution
def power(x, y):
result = 1.0
power = y
if y < 0:
power = -power
x = 1.0 / x
while power:
if (power & 1) != 0:
result *= x
x *= x
power >>>= 1
return result
def powr(x, y):
result = 1.0
power = y
if y < 0:
power = -power
x = 1.0 / x
if (y & 1) != 0:
return (power(x, y/2) ** 2) * x
else:
return power(x, y/2) ** 2