跳台阶(中等,递归)

题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
示例1
输入
1
返回值
1
示例2
输入
4
返回值
5
f[i]=f[i-1]+f[i-2]

class Solution {
    
    
public:
    int jumpFloor(int number) {
    
    
        if(number==1||number==2) return number;
        long long x=1,y=2;
        number-=2;
        while(number--)
        {
    
    
            y+=x;x=y-x;
        }
        return y;
    }
};

猜你喜欢

转载自blog.csdn.net/weixin_43540515/article/details/114332656