爬楼梯(Python)
创始人
2024-05-19 15:18:20

Python——动态规划——爬楼梯问题

爬楼梯问题

问题引入

【问题描述】

假设小明住在二楼,每次回家都需要经过一个有n层台阶的楼梯。小明每次可以选择一步走一级台阶或者一步走两级台阶。请计算一下小明从楼下到家一共有多少种走法?

【输入形式】

整数n,表示一共有几层台阶

【输出形式】

一行,表示一共有多少种走法

【样例输入】

10

【样例输出】

89

程序设计

def Climb(n):     #定义的爬楼梯函数
    if n<1:       #判断是否合法,台阶不合法,返回0
        return 0 
    if n==1:      #当只有一层台阶时,一种走法
        return 1
    if n==2:      #当有两层台阶时,两种走法
        return 2
    a,b=1,2       #当台阶数大于3时,我们发现走法数呈斐波那契排列
    sums=0        #即每一层台阶的走法数等于前两层台阶走法数的和
    for i in range(2,n):     #这是为什么呢,因为我们知道,每次只能走1步或者2步
        sums=a+b      #倒推一下,我们如何能到达第n级台阶呢,有两种方法
        a=b           #一种是在第9层台阶再走1步,另一种是

相关内容

热门资讯

世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...