标签:sample 不同的 edit checked body lis output xpl ant
一个小孩爬一个 n 层台阶的楼梯。他可以每次跳 1 步, 2 步 或者 3 步。实现一个方法来统计总共有多少种不同的方式爬到最顶层的台阶。
Example 1:
Input: 3
Output: 4
Explanation: 1 + 1 + 1 = 2 + 1 = 1 + 2 = 3 = 3 , there are 4 ways.
Example 2:
Input: 4
Output: 7
Explanation: 1 + 1 + 1 + 1 = 1 + 1 + 2 = 1 + 2 + 1 = 2 + 1 + 1 = 2 + 2 = 1 + 3 = 3 + 1 = 4 , there are 7 ways.
对于n=0
,我们认为答案是1。
class Solution: """ @param n: An integer @return: An Integer """ def climbStairs2(self, n): # write your code here if not n: return 1 dp = [0 for i in range(n + 1)] for i in range(n + 1): if i in [0, 1]: dp[i] = 1 elif i == 2: dp[i] = 2 elif i == 3: dp[i] = 4 else: dp[i] = dp[i - 1] + dp[i - 2] + dp[i - 3] return dp[n]
标签:sample 不同的 edit checked body lis output xpl ant
原文地址:https://www.cnblogs.com/yunxintryyoubest/p/14260316.html