1. 程式人生 > >劍指Offer9:變態跳臺階

劍指Offer9:變態跳臺階

思路:

因為n級臺階,第一步有n種跳法:跳1級、跳2級、到跳n級
跳1級,剩下n-1級,則剩下跳法是f(n-1)
跳2級,剩下n-2級,則剩下跳法是f(n-2)
所以f(n)=f(n-1)+f(n-2)+...+f(1)+f(0)
因為f(n-1)=f(n-2)+f(n-3)+...+f(1)+f(0)

所以f(n)=2*f(n-1) 其中f(1)=1,n>=2

# -*- coding:utf-8 -*-
class Solution:
    def jumpFloorII(self, number):
        # write code here
        if number<=0:
            return 0
        else:
            return pow(2,number-1)