力扣70.爬楼梯

题目:

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

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

思路:

本题属于斐波那契数列,思路如下:

// 1阶: 1种方法

// 2阶: 2种

// 3阶: 3种

// 4阶: 5种

// 5阶: 8种

// 你会发现一个规律,当前的n阶等于n-1和n-2的台阶方法数的总和

// 也就是f(n)=f(n-1)+f(n-2),这样把规律找出后,就可以编写了

p q r

0 0 1

0 1 1

1 1 2

1 2 3

2 3 5

cpp 复制代码
class Solution {
public:
    int climbStairs(int n) {
        int p=0,q=0,r=1;//p和q就代表着n-1和n-2,一开始初始化为0
        for(int i=1;i<=n;i++){
            p=q;
            q=r;
            r=p+q;
        }
        return r;
        // 1阶:1
        // 2阶:2
        // 3阶:3
        // 4阶:5
        // 5阶:8
        // 你会发现一个规律,当前的n等于n-1和n-2的台阶方法数的总和
        // 也就是f(n)=f(n-1)+f(n-2),这样把规律找出后,就可以编写了
    }
};
相关推荐
Jerry3 小时前
LeetCode 28. 找出字符串中第一个匹配项的下标
算法
Jerry5 小时前
LeetCode 459. 重复的子字符串
算法
海石8 小时前
1500分的题目,确实有实力,不过还是我略胜一筹
算法·leetcode
海石8 小时前
【记忆化搜索】条条大路通AC,走好适合你的那一条,走到后再考虑走得快
算法·leetcode
Jerry9 小时前
LeetCode 151. 反转字符串中的单词
算法
咖啡星人k12 小时前
从Vibe Coding到Prompt Engineering:AI编程的新技能树
面试·职场和发展·ai编程
a11177612 小时前
LM 算法迭代过程动画演示(SLAM)
算法
头茬韭菜12 小时前
Context 的生死抉择:四层压缩、截断算法与 Session Memory
算法·ai
Jerry12 小时前
LeetCode 541. 反转字符串 II
算法
Jerry13 小时前
LeetCode 344. 反转字符串
算法