题解 | #小乐乐走台阶#

小乐乐走台阶

http://www.nowcoder.com/practice/ebf04de0e02c486099d78b7c3aaec255

  • 要用递归来解决这个问题
  • 先不看整体,递归先用一个个例子来看就清楚了
  • 假设有n级台阶:
    • 1级台阶:
    • 台阶走1步就到,结果为1。即f(1)=1
      
    • 2级台阶:
    • 台阶走1步到,或台阶走2步到,即f(2)=2
      
    • 3级台阶
    • 走到3级台阶前,乐乐肯定必须到达1级台阶或2级台阶:
      
    •     3级台阶最后一步为1,乐乐前一步到达2级台阶,到达2级台阶有f(2)种走法
      
    •     3级台阶最后一步为2,乐乐前一步到达1级台阶,到达1级台阶有f(1)种走法
      
    • 总的走法为f(1)+f(2)
      
    • n级台阶:
    • 到最后完成前,乐乐可以走2步也可以走1步,
      
    •     走1步:
      
    •         在这1步前的走法为f(n-1)
      
    •     走2不:
      
    •         在这2步前的走法为f(n-2)
      
    • 总结:
    • 走完n级的台阶,
      
    •         f(n)=f(n-1)+f(n-2)
      
    •         可以理解成,
      
    •         走完n级台阶的走法=最后一步是1的走法+最后一步是2的走法
      
    •         走完n级台阶的走法=到达n-1级台阶的走法+到达n-2级台阶的走法
      
    •         即:f(n)=f(n-1)+f(n-2)
      
    • 实际上反应这种递归的经典例子就是斐波那契数列,也叫兔子数列,即某项为前两项之和

代码如下:

思路:

1、定义走台阶函数 2、获取用户输入,带入函数并打印输出

def fib(n):
    return 1 if n<2 else fib(n-1)+fib(n-2)#三元运算符expression写法
print(fib(int(input())))

全部评论
赞一个,居然舍得写这么详细
点赞 回复 分享
发布于 2022-08-03 22:43
感谢博主
点赞 回复 分享
发布于 2022-06-23 22:05

相关推荐

感觉他们一点都不了解现在这个社会就业有多难,已经在牛客刷到好多篇&nbsp;延毕的帖子了,延毕就会导致已经找好的工作就没了,还得重新再找,学校和老师们是怎么想的呢????看到学生丢失工作会开心吗&nbsp;就业数据都在造假,真实的就业困难不去解决&nbsp;一个个真是好样的
从今天开始狠狠卷JVAV_癫:学生看到的是导师不放实习导致offer黄了。 导师看到的是招进来的学生吃自己补助和自己的招生名额,却没给自己升迁带来任何帮助,还要跑路。 根本利益的不一致,最主要留校的导师大概率是职场上招聘失败的,被迫留校的,什么牛鬼蛇神都会有
点赞 评论 收藏
分享
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
05-28 12:15
点赞 评论 收藏
分享
评论
14
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务