1. 程式人生 > >[劍指offer] 8. 跳臺階

[劍指offer] 8. 跳臺階

題目描述

一隻青蛙一次可以跳上1級臺階,也可以跳上2級。求該青蛙跳上一個n級的臺階總共有多少種跳法(先後次序不同算不同的結果)。
思路: 簡單的DP,用一個數組dp[i]儲存跳到第i個臺階有幾種方法。 因為只能跳一階或者二階,所以狀態轉移方程為: dp[i]=dp[i-1]+dp[i-2] dp[1]=1,dp[2]=2
class Solution
{
public:
  int jumpFloor(int number)
  {
    int dp[9999] = {0};
    dp[
1] = 1; dp[2] = 2; for (int i = 3; i <= number; i++) { dp[i] = dp[i - 1] + dp[i - 2]; } return dp[number]; } };