跳台阶

一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。

思路:n=1, f=1

   n=2,f=2(11;2)

   n=3,f=3(111;12;21)

   n=4,f=5(1111,22,121,211,112)

   实际上就是一个斐波那契数列

   注意考虑n<1的时候

# -*- coding:utf-8 -*-
class Solution:
    def jumpFloor(self, number):
        # write code here
            if number<1:
                return 0
            if number==1:
                return 1
            if number==2:
                return 2
            a=1
            b=2          
            for i in range(3,number+1):
                c=a+b
                a=b
                b=c
            return c

  

posted @ 2020-05-09 19:35  Roronoa-Zoro  阅读(99)  评论(0编辑  收藏  举报