解题思路
其实这跟基础的爬楼梯题目是差不多的,只不过基础的爬楼梯的题目是每次只能爬一阶或者两阶,现在只能爬一阶或者三阶

class Solution():
    def JumpFloor(self,n):
        if n==1:
            return 1
        if n<=3:
            return n-1
        pre1,pre2,pre3=2,1,1#pre1,pre2,pre3分别表示爬上n-1,n-2,n-3阶台阶的方案
        for i in range(4,n+1):
            cur=pre1+pre3
            pre3=pre2
            pre2=pre1
            pre1=cur
        return cur