Python TypeError:应为range()整数结束参数,获得浮点值
这是leetcode上的一个问题。 你正在爬楼梯。到达山顶需要n步 每次你都可以爬1步或2步。你能以多少种不同的方式爬到山顶 注:给定n为正整数。 为什么会这样 显示公司标签 显示标签Python TypeError:应为range()整数结束参数,获得浮点值,python,debugging,Python,Debugging,这是leetcode上的一个问题。 你正在爬楼梯。到达山顶需要n步 每次你都可以爬1步或2步。你能以多少种不同的方式爬到山顶 注:给定n为正整数。 为什么会这样 显示公司标签 显示标签 class Solution(object): def climbStairs(self, n): twostairtimes = math.floor(n/2) result = 0 twostairresult = 0 while (
class Solution(object):
def climbStairs(self, n):
twostairtimes = math.floor(n/2)
result = 0
twostairresult = 0
while (twostairtimes>=0):
onestairtimes = n - (2 * twostairtimes)
if onestairtimes == 0:
result+=1
elif twostairtimes ==0:
result+=1
else:
result += self.jiecheng(n)/(self.jiecheng(twostairtimes)*self.jiecheng(onestairtimes))
result += 1
twostairtimes=twostairtimes-1
return result
def jiecheng(self,n):
c = 1
for i in range(n+1):
c *= i
return c
如果您确定
n
是一个整数
则按如下方式进行转换:
range(int(n+1))
将twostatimes=math.floor(n/2)
更改为twostatimes=n//2
或升级为Python 3。CG问题已解决