平臺
牛客網
語言
python2.7.3
作業內容
題目描述
一隻青蛙一次可以跳上 1 級臺階,也可以跳上 2 級。 求該青蛙跳上一個 n 級的臺階總共有多少種跳法(先後次序不同算不同的結果)
題目理解
該題的本質是斐波那契數列
解題思路
一級:1種跳法 1
二級:2種 11 2
三級:3種 111 12 21
四級:5種 1111 112 121 211 22
五級:8種 11111 1112 1121 1211 2111 122 212 221
青蛙可以一次跳2級,或1級,即總共跳的臺階數都是由2和1相加得到的
程序
class Solution:
def jumpFloor(self, number):
if number == 1:
return 1
if number == 2:
return 2
else:
a,b =1,2
for i in range(2, number ):
a,b = b,a+b
return b