C++:世界上唯一能让程序员在配置环境上|

香菇0_0

园龄:2年7个月粉丝:10关注:1

爬楼梯问题理解

假设楼梯有n阶,每次可以爬12个台阶,求到达楼顶的方法总数?

假设f(n)为n阶楼梯的爬楼方法总数,则有:

f[i] = f[i - 1] + f[i - 2]

很多题解都是假设爬到最后还剩1或2个台阶,然后将这两种情况累加起来,得到的结果就是最后的方法总数,我感觉这比较难以理解,总认为前面爬楼方法会有重复的部分。

之后我想到如果换一种思路来理解或许思路就比较清晰了,比如我们第一步可以爬1或2个台阶,这是两种完全不同的情况,接下来要爬到楼顶的方法总数则分别为f(i-1)和f(i-2),我们把它们相加,这样一想的确是爬楼的方法总数。

本文作者:香菇0_0

本文链接:https://www.cnblogs.com/Xiang-gu/p/16512348.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   香菇0_0  阅读(54)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起
  1. 1 404 not found REOL
404 not found - REOL
00:00 / 00:00
An audio error has occurred.