其他分享
首页 > 其他分享> > 动态规划--爬楼梯

动态规划--爬楼梯

作者:互联网

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。

每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?

注意:给定 n 是一个正整数。

示例 1:

输入: 2
输出: 2
解释: 有两种方法可以爬到楼顶。
1.  1 阶 + 1 阶
2.  2 阶
示例 2:

输入: 3
输出: 3
解释: 有三种方法可以爬到楼顶。
1.  1 阶 + 1 阶 + 1 阶
2.  1 阶 + 2 阶
3.  2 阶 + 1 阶

class Solution {

public:

    int climbStairs(int n) {

        vector<int> memo(n+1,-1);

        memo[0]=memo[1]=1;

        for(int i=2;i<=n;i++)

            memo[i]=memo[i-1]+memo[i-2];

        return memo[n];

    }

};

标签:楼顶,爬楼梯,示例,--,memo,int,动态,方法
来源: https://blog.csdn.net/u010955460/article/details/113873896