• 动态规划,定义dp数组,大小为2;
  • 初始化前两项;
  • 递推关系:当前项为前两项的和,更新dp数组;
  • 返回最终结果。
class Solution {
public:
    int jumpFloor(int number) {
        if (number == 1) return 1;
        if (number == 2) return 2;
        int dp[2];
        dp[0] = 1;
        dp[1] = 2;
        for (int i = 2; i < number; i++) {
            int sum = dp[0] + dp[1];
            dp[0] = dp[1];
            dp[1] = sum;
        }
        return dp[1];
    }
};