题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
思路
- 类似斐波那契数列
- 只不过从first=1,last=2开始
- 执行n-1次
# -*- coding:utf-8 -*-
class Solution:
def jumpFloor(self, number):
# write code here
if number<=0:
return 0
if number==1:
return 1
if number==2:
return 2
first=1
last=2
sum1=0
while number>2:
sum1=first+last
first=last
last=sum1
number-=1
return sum1
测试用例
if __name__=='__main__':
s=Solution()
n=4
print(s.jumpFloor(n))