永发信息网

c语言 设计 爬楼梯的方法

答案:2  悬赏:0  手机版
解决时间 2021-02-23 04:32
  • 提问者网友:人傍凄凉立暮秋
  • 2021-02-22 07:19
c语言 设计 爬楼梯的方法
最佳答案
  • 五星知识达人网友:人间朝暮
  • 2021-02-22 07:41
我是学pascal的~只说得上来算法。
你说的爬楼梯是指有n阶楼梯,每次可以上1,2……,p阶(1<=p<=n),问走到最上面有多少种不同的走法吧?
这个就是递推啊~
设上i级台阶共有f(i)种不同的方法,很简单就可以知道f(1)=1,f(2)=2…… 当i大于2时,分n种情况讨论:第一步上了1级台阶,第一步上了2级台阶,……第一步上了n级台阶。
如果第一步上了1级楼梯,那么还剩下i-1级楼梯,要走完这i-1级楼梯,一共有f(i-1)种方法。
如果第一步上了2级楼梯,那么还剩下i-2级楼梯,要走完这i-2级楼梯,一共有f(i-2)种方法。
……
如果第一步上了n级楼梯,那么还剩下i-n级楼梯,要走完这i-2级楼梯,一共有f(i-n)种方法。

所以,在第一种情况下有f(i-1)种不同走法,第二种情况有f(i-2)种不同走法……这n种情况既没有重复方案,也没有遗漏,因此得出f(i)=f(i-1)+f(i-2)+……+f(i-n)

接着就行了,200阶楼梯都不成问题。
全部回答
  • 1楼网友:醉吻情书
  • 2021-02-22 08:50
说清楚一些
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯