【力扣】每日一题—第70题,爬楼梯

题目:

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

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

思路:

我开始是写了一个函数计算爬一层和爬二层的个数,之后排列求和,但是超范围了,后来改了范围,但是结果不对,,,,

也不知道为啥,

后来看了结果越看越眼熟,这不是斐波那契数列吗?

之后就会嘞

结果代码:

复制代码
复制代码
int climbStairs(int n) {
    //int n,j;
    int sum=0;
    //scanf("%d",&n);
    int f_1=1;
    int f_2=2;
    int f_n=0;
    //int f_n_1=0;
    if(n==0||n==1||n==2)
    {
        return n;
    }
    for(int i=1;i<=n-2;i++)
    {
        f_n=f_1+f_2;
        //f_n_1=f_n+f_2;
        f_1=f_2;
        f_2=f_n;
    }
    return f_n;
   // return 0;
    
}

再接再励吧!!!!!!!

脑袋空空。

如果有更好的方案,请赐教,感谢!

相关推荐
wuyoula5 分钟前
尹之盾企业版网络验证
服务器·开发语言·javascript·c++·人工智能·ui·c#
Via_Neo10 分钟前
区间dp算法
开发语言·javascript·算法
amcomputer10 分钟前
简单总结拉格朗日乘数法
算法
legendary_16311 分钟前
Type-C手机快充与音频/数据传输的完美融合:多功能转接器解析
c语言·智能手机·音视频
hi_ro_a12 分钟前
C++ 手撕 STL 底层:红黑树封装 mymap/myset
数据结构·c++·算法
tankeven21 分钟前
贪心算法(Greedy Algorithm)详解:从理论到C++实践
c++·算法
Hesionberger21 分钟前
LeetCode72.编辑距离(多维动态规划)
java·开发语言·c++·python·算法
lwf00616423 分钟前
逻辑回归学习笔记-梯度下降求解回归方程
算法·机器学习·逻辑回归
人道领域29 分钟前
【LeetCode刷题日记】1047:双栈法与双指针法巧妙消除相邻重复字符
java·算法·leetcode·职场和发展
切糕师学AI29 分钟前
布隆过滤器(Bloom Filter)技术详解
数学·算法