#include <stdio.h>int countWays(int n) {if (n <= 0) {return 0;}else if (n == 1) {return 1;}else if (n == 2) {return 2;}else {int dp[10000];dp[1] = 1;dp[2] = 2;for (int i = 3; i <= n; i++) {          //定义一个数组代替return,使其变为一个循环, //降低了时间复杂度dp[i] = dp[i - 1] + dp[i - 2];}return dp[n];}
}int main() {int n;scanf_s("%d", &n);printf("%d\n", countWays(n)); // 输出n级楼梯的走法数return 0;
}

这是一个经典的计算楼梯走法问题,可以用递归程序来计算。如果n=1,显然只有1种走法;如果n=2,有两种走法;如果n>2,则可以分为两种情况:第一步上1阶,则剩下的有f(n-1)种走法;第一步上2阶,则剩下的有f(n-2)种走法。因此,整个问题可以用递归的方式求解,

题目描述

楼梯有 N 级台阶,上楼可以一步上一阶,也可以一步上二阶。编一递归程序,计算共有多少种不同走法?

输入描述:

3

输出描述:

3

示例1

输入

3

3

输出

3

3

走楼梯(无需担忧N的数值太大)相关推荐

  1. bash:数值太大不可为算数进制的基

    数值太大不可为算数进制的基 new,2022-08-19,chenxizhan1995@163.com 缘起 写了个脚本,每个小时执行一次,有一段逻辑要在当前时间为 21:00 ~ 21:59 时才执 ...

  2. 动态规划走楼梯_动态规划问题为什么要画表格?

    ❝ 本文是我的 91 算法第一期的部分讲义内容.91 算法第一期已经接近尾声,二期的具体时间关注我的公众号即可,一旦开放,会第一时间在公众号<力扣加加>通知大家. ❞ 动态规划可以理解为是 ...

  3. 递归法:走楼梯; 旋转数组的最小数字(递归法和改进二分法)

    题目:走楼梯 小明在走楼梯,楼梯有n阶台阶,一次可以上1阶,2阶或者3阶,实现一个方法,计算小明有多少种走楼梯的方式 package louti; import java.util.Scanner;p ...

  4. python结果不能全部显示_numpy矩阵数值太多不能全部显示的解决

    numpy矩阵数值太多不能全部显示的解决 numpy矩阵数值太多不能全部显示,可以运行以下命令令全部数值展示出来 np.set_printoptions(threshold='nan') 补充知识:p ...

  5. 【动态规划】走楼梯问题

    走楼梯问题 问题:有一座高度是10级台阶的楼梯,从下往上走,每跨一步只能向上1级或者2级台阶.一共有多少种走法.(和铺瓷砖问题是一样的) 暴力枚举很简单,先选择可能性,再根据排列组合公式,记录. 但是 ...

  6. 递归算法----走楼梯问题(跳台阶)

    /*** 案例2 分治算法 走楼梯* 一个台阶总共有n级,如果一次可以走1级,也可以一次走2级,求总共有多少种走法.* 分析:* 如果只有1级台阶,则只有一种走法,如果有2级台阶,则有2种走法:一次走 ...

  7. CSDN周赛29题解-订班服、争抢糖豆、走楼梯、打家劫舍

    文章目录 给CSDN竞赛的建议 CSDN周赛29题解 订班服 抓糖豆 走楼梯 打家劫舍 给CSDN竞赛的建议 1.希望多出一些原创题目.本次四道题目基本都是非原创题目,增加了作弊的可能性 2.可以模仿 ...

  8. 走楼梯问题PHP,算法之走楼梯问题

    A 上楼梯时,B 从同一楼梯往下走.每次不一定只走 1 级,最多可以一次跳过 3 级(即直接前进 4 级). 但无论走多少级,1 次移动所需时间不变.两人同时开始走,求共有多少种"两人最终同 ...

  9. python编程绘制楼梯_Python走楼梯问题解决方法示例

    本文实例讲述了Python走楼梯问题解决方法.分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- #!python3 ''' 下楼问题.从楼上走到楼下共有h个台阶,每一步有 ...

最新文章

  1. SPOJ 130 - Rent your airplane and make money(dp+优化)
  2. 本体开发方法——the Method of Ontology Development
  3. 关于站库分离渗透思考总结
  4. object picker 微信小程序_微信小程序 demo分享
  5. delphi 中如果不进行 closehandle 会怎么样_报考八一农大的十一大选择之七|带你走进不一样的“信息世界”...
  6. 迪士尼前高管凯文·梅耶尔加盟字节跳动,出任COO
  7. matlab bwdist
  8. 【转】如何更改VS2005的启动环境
  9. 按顺序读取选中的复选框
  10. 如何在浏览器中下载网站的https证书
  11. G502使用计算机配置,罗技g502dpi设置配置文件 | 手游网游页游攻略大全
  12. wps改照片底色有红边_Excel怎么给证件照换底色?Excel中快速将证件照蓝底换红底的方法介绍...
  13. react 使用recoil 减少不必要的组件渲染
  14. 【毕业季·进击的技术er】青春不散场 恰同学少年
  15. 常见前端安全漏洞及防范方法
  16. Numpy删除指定行
  17. 如何使用Excel管理项目?
  18. 和平精英清明节服务器维修时间,和平精英开服时间/和平精英几点能玩 和平精英常见问题解答汇总...
  19. 毕设 JAVA.JSP二手车交易系统论文
  20. DiskGenius 百度云下载链接

热门文章

  1. AI笔记: 数学基础之矩阵的初等变换计算矩阵的秩
  2. uni-app 自定义选择日期2(2021-09-16)
  3. 如何复制PPT的模板?
  4. java求n以内的质数
  5. PHP Object 对象
  6. 石家庄铁道大学数据结构实验4 图(完整代码)
  7. OpenPose: Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields 论文精读
  8. 手机号区分运营商 php
  9. mydock 怎么卸载_MyDock(桌面dock栏)下载_MyDock(桌面dock栏) 版本:v4.8.8.9官方版_魅蓝下载...
  10. centos8 yum 安装mysql8