程序查找用Python爬楼梯的方法
假设我们有一个n步的楼梯,一次可以爬1步或2步。我们必须定义一个函数,该函数返回可以爬楼梯的独特方式的数量。
步骤的顺序不应更改,因此每个不同的步骤顺序都应视为一种方式。如果答案很大,则将结果修改10^9+7
因此,如果输入类似n=5,则输出将为8,因为有8种独特的方式-
1,1,1,1,1
2111
1211
1,1,2,1
1,1,1,2
122
212
221
为了解决这个问题,我们将遵循以下步骤-
dp:=大小为n+1的数组,并用0填充
dp[1]:=1
对于范围2到n+1的i
dp[i]:=dp[i-1]+dp[i-2]
返回dpmodm的最后一个元素
让我们看下面的实现以更好地理解-
示例
m =(10**9)+7
class Solution:
def solve(self, n):
dp=[0 for _ in range(n+2)]
dp[1]=1
for i in range(2,n+2):
dp[i]=dp[i-1]+dp[i-2]
return dp[-1] % m
ob = Solution()print(ob.solve(5))输入项
5
输出结果
8
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短