假设最后一步到X级台阶,有F(X)种走法,
这题求的就是F(11)
因为每步可以迈1或2级台阶。
所以最后一步到11级台阶,
而倒数第2步可能是在第10或9级台阶。
所以到11级台阶的走法,是到第10或9级台阶走法的和。
同样到9级台阶的走法,是到第7或8级台阶走法的和。
...................
F(11)
=F(9)+F(10)
=2F(9)+F(8)
=3F(8)+2F(7)
=5F(7)+3F(6)
=8F(6)+5F(5)
=13F(5)+...
假设最后一步到X级台阶,有F(X)种走法,
这题求的就是F(11)
因为每步可以迈1或2级台阶。
所以最后一步到11级台阶,
而倒数第2步可能是在第10或9级台阶。
所以到11级台阶的走法,是到第10或9级台阶走法的和。
同样到9级台阶的走法,是到第7或8级台阶走法的和。
...................
F(11)
=F(9)+F(10)
=2F(9)+F(8)
=3F(8)+2F(7)
=5F(7)+3F(6)
=8F(6)+5F(5)
=13F(5)+...
这类似一个斐波纳契数列
1级台阶----1种
2级台阶----2种
3级台阶----3种
4级台阶----5种
5级台阶----8种
.
a(n+2)=a(n)+a(n+1) =====(通项公式:)
所以a11=144
第一次先上一个一级,后面的都上两级.
第二次先上一个两级,再上一个一级,后面的都上两级
第三次先上两个两级,再上一个一级,后面都上两级.
......
按上面的方法,把一级和二级的位置换一下,把两次的方法数加一起,就是总共的方法数.
用计算机编程.例如用VB是:
Private Sub Command1_Click()
Const a As Integer = 1, b As Integer = 2, c As Integer = 11
p = 0
q = 0
For p = 1 To 11
For q = 0 To 5
k = a * p + b * q
If k = c Then
Print "上一级用" & p, "上二级用" & q
End If
Next q
Next p
End ...
标签:上法