111-爬楼梯

假设你正在爬楼梯,需要n步你才能到达顶部。但每次你只能爬一步或者两步,你能有多少种不同的方法爬到楼顶部?

样例

比如n=3,1+1+1=1+2=2+1=3,共有3中不同的方法
返回 3

标签

动态规划

思路

使用动态规划,用 dp[i] 记录走到第 i 步共有多少种方法
动态转移方程为:dp[i] = dp[i-1] + dp[i-2]
比如:
登上第1级:1种
登上第2级:2种
登上第3级:1+2=3种(前一步要么从第1级迈上来,要么从第2级迈上来)
登上第4级:2+3=5种(前一步要么从第2级迈上来,要么从第3级迈上来)
登上第5级:3+5=8种
登上第6级:5+8=13种
登上第7级:8+13=21种
登上第8级:13+21=34种
登上第9级:21+34=55种
登上第10级:34+55=89种

code

class Solution {
public:/*** @param n: An integer* @return: An integer*/int climbStairs(int n) {// write your code hereif(n <= 0) {return 1;}vector<int> dp(n+1, 0);dp[1] = 1;dp[2] = 2;for(int i=3; i<=n; i++) {dp[i] = dp[i-1] + dp[i-2];}return dp[n];}
};

转载于:https://www.cnblogs.com/libaoquan/p/7200461.html

lintcode-111-爬楼梯相关推荐

  1. LintCode 111. 爬楼梯 JavaScript算法

    描述 假设你正在爬楼梯,需要n步你才能到达顶部.但每次你只能爬一步或者两步,你能有多少种不同的方法爬到楼顶部? 样例 - Example 1:Input: n = 3Output: 3Explanat ...

  2. python小明爬楼梯_LintCode Python 简单级题目 111.爬楼梯 (斐波纳契数列 青蛙跳)

    **设f(n)为n阶台阶的情况下,所有不同的跳法方法的总和!** 1.如果起始跳一阶的话,剩余的n-1阶就有 f(n-1) 种跳法: 2.如果起始跳二阶的话,剩余的n-2阶就有 f(n-2) 种跳法: ...

  3. lintcode: 爬楼梯

    题目: 爬楼梯 假设你正在爬楼梯,需要n步你才能到达顶部.但每次你只能爬一步或者两步,你能有多少种不同的方法爬到楼顶部? 样例 比如n=3,1+1+1=1+2=2+1=3,共有3中不同的方法 返回 3 ...

  4. LintCode Climbing Stairs 爬楼梯

    中文描述: 假设你正在爬楼梯,需要n步你才能到达顶部.但每次你只能爬一步或者两步,你能有多少种不同的方法爬到楼顶部? 样例 比如n=3,1+1+1=1+2=2+1=3,共有3中不同的方法 返回 3 E ...

  5. Python 爬楼梯问题--有n阶台阶,上楼可以一步上1阶,2阶,3阶,计算共有多少种不同的走法?

    Python爬楼梯问题:有n阶台阶,上楼可以一步上1阶,2阶,3阶,计算共有多少种不同的走法? 总共n步台阶(先假设n>3),f(n)表示n步台阶的走法总数 1.第一步如果是只走1步台阶,剩下的 ...

  6. python爬楼梯多少种_Python 爬楼梯问题--有n阶台阶,上楼可以一步上1阶,2阶,3阶,计算共有多少种不同的走法?...

    Python爬楼梯问题:有n阶台阶,上楼可以一步上1阶,2阶,3阶,计算共有多少种不同的走法? 总共n步台阶(先假设n>3),f(n)表示n步台阶的走法总数 1.第一步如果是只走1步台阶,剩下的 ...

  7. 【算法】1041- 图解 LeetCode第 70 题爬楼梯问题

    最近开始努力研究算法,遇到这个很有意思的题目,因为从中复习到斐波那契数列,又通过某篇资料,查到中科院官网,看了很多科普文章.深挖下去能看到很多东西. 本着热爱分享的初衷,整理本文与大家分享,题目本身没 ...

  8. LeetCode简单题之爬楼梯

    题目 假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 示例 1: 输入:n = 2 输出:2 解释:有两种方法可以爬到楼顶. 1 ...

  9. LeetCode实战:爬楼梯

    题目英文 You are climbing a stair case. It takes n steps to reach to the top. Each time you can either c ...

  10. 【每日一算法】爬楼梯

    微信改版,加星标不迷路! 每日一算法-爬楼梯 作者:阿广 阅读目录 ? 题目 ? 解析 ? 完整代码 1 题目 假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多 ...

最新文章

  1. python源代码最多的学习网站_史上最全Python学习资料大合集分享
  2. Javascript 获取浏览器窗口中文档(视口)可用尺寸的方法
  3. MFC下绘制曲线工具Teechart使用
  4. Spring Boot 项目瘦身指南,非常实用!
  5. Prism+WPF使用DependencyInjection实现AutoMapper的依赖注入功能
  6. Permissions for id_rsa are too open
  7. 如何导出已安装的安卓app为apk包
  8. mysql 分页效率_MYSql分页查询效率提高
  9. Productivity Power Tools 动画演示(转)
  10. Nginx 如何开启gzip 来提高页面加载速度
  11. pcs7组态虚拟机中的服务器,PCS7冗余服务器配置
  12. Premiere银色金属玻璃质感logo标志片头AE模板mogrt
  13. 阿里淘咖啡火了 全球九大无人便利店物联网技术方案详解
  14. 链家网页爬虫_爬虫小技巧——以最简单的方式爬取链家房源信息
  15. 人教版三年级计算机教学计划,2017人教版三年级信息技术教学计划范文
  16. ISCSI的target和initiator的部署
  17. vue网易云歌单案例
  18. C++ opencv之像素值统计(minMaxLoc,meanStdDev)
  19. 火狐浏览器怎么清理缓存、cookie等?
  20. c++Tomorrow never knows?

热门文章

  1. 【渝粤教育】广东开放大学 建筑设备 形成性考核 (33)
  2. 计算机视觉实战(三)阈值与平滑处理
  3. 理解GAN生成对抗网络
  4. 好好的虚拟机不能用了, 出现无法打开内核设备\\.\Global\vmx86: 系统找不到指定的文件的错误, 以下是网上找到的解决方法,亲测可用...
  5. 【完美】mac word2016 安装 endnote x9
  6. java 实现类似spring的可配置的AOP框架
  7. 线段树(SegmentTree)学习笔记
  8. C++详解new/delete
  9. 使用 PHP Curl 做数据中转
  10. [转]日常交际技巧经验总结100句