TypeError:应为range()整型结束参数,g

2024-09-30 20:28:22 发布

您现在位置:Python中文网/ 问答频道 /正文

这是leetcode上的一个问题。 你在爬楼梯。它需要n步才能到达顶端。在

每次你可以爬1到2步。你能用多少种不同的方式爬到顶端?在

注:给定n为正整数。 为什么它显示了这一点?在

显示公司标记 显示标记

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

Tags: 标记selfreturndef方式公司resultclass
2条回答

如果您确定n是一个integer,请按如下方式进行转换:

range(int(n+1))

twostairtimes = math.floor(n/2)更改为twostairtimes = n//2,或升级到python3。CG问题解决

相关问题 更多 >