力扣每日一题70:爬楼梯

题目描述:

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

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

示例 1:

复制代码
输入:n = 2
输出:2
解释:有两种方法可以爬到楼顶。
1. 1 阶 + 1 阶
2. 2 阶

示例 2:

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

提示:

  • 1 <= n <= 45

通过次数

1.3M

提交次数

2.4M

通过率

54.2%

思路和题解:

经典的动态规划,爬到第一个台阶的方法是1,爬到第二个台阶的方法是2,爬到其余的台阶只能由前一个台阶或前面第两个台阶一步子爬过来,也就是方法等于爬到前两个台阶的方法加1。

代码:

cpp 复制代码
class Solution {
public:
    int climbStairs(int n) {
        int dp[46];
        dp[1]=1;
        dp[2]=2;
        for(int i=3;i<=n;i++) dp[i]=dp[i-1]+dp[i-2];
        return dp[n];
    }
};
相关推荐
君义_noip6 小时前
信息学奥赛一本通 1661:有趣的数列 | 洛谷 P3200 [HNOI2009] 有趣的数列
c++·算法·组合数学·信息学奥赛·csp-s
程序员:钧念6 小时前
深度学习与强化学习的区别
人工智能·python·深度学习·算法·transformer·rag
英英_7 小时前
MATLAB数值计算基础教程
数据结构·算法·matlab
一起养小猫7 小时前
LeetCode100天Day14-轮转数组与买卖股票最佳时机
算法·leetcode·职场和发展
hele_two8 小时前
快速幂算法
c++·python·算法
l1t8 小时前
利用DeepSeek将python DLX求解数独程序格式化并改成3.x版本
开发语言·python·算法·数独
jllllyuz8 小时前
基于子集模拟的系统与静态可靠性分析及Matlab优化算法实现
算法·matlab·概率论
程序员-King.9 小时前
day143—递归—对称二叉树(LeetCode-101)
数据结构·算法·leetcode·二叉树·递归
BlockChain8889 小时前
字符串最后一个单词的长度
算法·go
爱吃泡芙的小白白9 小时前
深入解析:2024年AI大模型核心算法与应用全景
人工智能·算法·大模型算法