跳台阶

题目链接

Solution

每次可以跳上1级台阶,也可以跳上2级。求跳到n级的台阶总共有多少种跳法。
dp可以解决此类计数问题。
设f[i]表示到第i层台阶的方案数,显然, ;
有递推式:
所以递推一下即可。

class Solution {
public:
    int jumpFloor(int number) {
        if (number == 1) return 1;
        else if (number == 2) return 2;
        else return jumpFloor(number - 1) + jumpFloor(number - 2);
    }
};