zoukankan      html  css  js  c++  java
  • 跳台阶

    一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。

    解题思路:

    定义

    dp[n][0] 表示跳上第n级台阶时是跳1级上来的

    dp[n][1]表示跳上第n级台阶时是跳2级上来的

    转义方程:

    dp[n][0] = dp[n-1][0] + dp[n-1][1]

    dp[n][1] = dp[n-2][0] + dp[n-2][1]

    class Solution {
    public:
    
        int jumpFloor(int number) {
            int dp[number+1][2];
            dp[1][0] = 1;
            dp[1][1] = 0;
            dp[2][0] = 1;
            dp[2][1] = 1;
            for(int i = 3; i <= number; i++){
                dp[i][0] = dp[i-1][0] + dp[i-1][1];
                dp[i][1] = dp[i-2][0] + dp[i-2][1];
            }
            return dp[number][0] + dp[number][1];
        }
    };
    

      

  • 相关阅读:
    linux command ubuntu
    C++ project
    windows command line
    vi command
    C++ Language
    postgresql backup
    C Language
    L1-046. 整除光棍(模拟除法)
    pta 拯救007(Floyd)
    CCF 201609-4 交通规划
  • 原文地址:https://www.cnblogs.com/chengsheng/p/10603909.html
Copyright © 2011-2022 走看看