王大法上台阶问题

电影《少年班》里老师给王大法出了一个问题,题目是:有20级台阶每次可以上1级或2级,一共有多少种上法?

如果按照排列组合分类的方法我是没分出来,如果按照类似动态规划的方法就很好解了。

如果有n级台阶,设总上法有f(n),那第一脚上1级,剩下的n-1级台阶的情况下就是f(n-1)种上法,如果第一脚上2级,剩下n-2级台阶就是f(n-2)种上法,并且第一脚上1级和第一脚上2级的方法肯定不重复,并且第一脚只能上1级或2级,所以

f(n) = f(n-1) + f(n-2)

这就是斐波那契数列啊,f(1)=1,f(2)=2

f(20)=10946

通项公式的解法可以参考下面的地址,解法很有创意,用到组合数学的东西,学习了下相关的知识终于明白了。

https://my.oschina.net/Tsybius2014/blog/688865?p=1

组合数学很有趣,又打开一个新世界。

类似的如果每次可以上1级或2级或3级,那

f(n) = f(n-1) + f(n-2) + f(n-3)

如此类推,通项公式也依次类推也可以做,只是要解高次方程。

posted on 2019-10-06 17:27  litandy  阅读(1893)  评论(0编辑  收藏  举报

导航