视频字幕
我们来分析这个楼梯问题。楼梯一共有11级,每一步只能登上2级或者3级台阶。我们需要找出有多少种不同的走法能够到达第11级。这里的关键是理解什么叫做不同的走法,比如到达第5级,可以先走2级再走3级,也可以先走3级再走2级,这算作两种不同的走法。
现在我们从简单情况开始分析,建立递推关系。设f(n)表示到达第n级楼梯的走法数。要到达第n级,我们只能从第n-2级走2步,或者从第n-3级走3步。因此得到递推关系:f(n)等于f(n-2)加上f(n-3)。让我们计算前几个值:f(0)等于1表示空走法,f(1)等于0因为无法到达,f(2)等于1只有一种走法,f(3)等于1也只有一种走法。
现在我们需要确定递推的初始条件,这是动态规划的关键步骤。f(0)等于1,表示空走法,即不走任何步骤到达起点。f(1)等于0,因为我们无法用每步2级或3级的方式到达第1级。f(2)等于1,只有一种走法就是一步走2级。f(3)等于1,只有一种走法就是一步走3级。有了这些初始条件,我们就可以开始递推计算了。
现在我们使用递推公式f(n)等于f(n-2)加f(n-3)来逐步计算。从已知的初始条件开始:f(0)等于1,f(1)等于0,f(2)等于1,f(3)等于1。然后开始递推:f(4)等于f(2)加f(1)等于1加0等于1。f(5)等于f(3)加f(2)等于1加1等于2。继续计算f(6)等于2,f(7)等于3,f(8)等于4,f(9)等于5,f(10)等于7。最后f(11)等于f(9)加f(8)等于5加4等于9。所以一共有9种不同的走法。
我们得到了最终答案:f(11)等于9,一共有9种不同的走法。让我们验证这个结果,列举所有9种走法:前5种都是用4个2步和1个3步的组合,后4种都是用1个2步和3个3步的组合。总结一下动态规划的解题思路:首先建立递推关系,然后确定初始条件,接着逐步计算到目标值,最后验证结果的正确性。这种方法在解决类似的计数问题时非常有效。