爬楼梯(Python)

news/2024/11/1 15:32:06/

Python——动态规划——爬楼梯问题

爬楼梯问题

问题引入

【问题描述】

假设小明住在二楼,每次回家都需要经过一个有n层台阶的楼梯。小明每次可以选择一步走一级台阶或者一步走两级台阶。请计算一下小明从楼下到家一共有多少种走法?

【输入形式】

整数n,表示一共有几层台阶

【输出形式】

一行,表示一共有多少种走法

【样例输入】

10

【样例输出】

89

程序设计

def Climb(n):     #定义的爬楼梯函数
    if n<1:       #判断是否合法,台阶不合法,返回0
        return 0 
    if n==1:      #当只有一层台阶时,一种走法
        return 1
    if n==2:      #当有两层台阶时,两种走法
        return 2
    a,b=1,2       #当台阶数大于3时,我们发现走法数呈斐波那契排列
    sums=0        #即每一层台阶的走法数等于前两层台阶走法数的和
    for i in range(2,n):     #这是为什么呢,因为我们知道,每次只能走1步或者2步
        sums=a+b      #倒推一下,我们如何能到达第n级台阶呢,有两种方法
        a=b           #一种是在第9层台阶再走1步,另一种是


http://www.ppmy.cn/news/20200.html

相关文章

信用卡数字识别

信用卡数字识别一、读入模板图像二、数字模板图像处理1、模板图像预处理1.1、转换为灰度图1.2、转换为二值化图像2、轮廓处理2.1、计算轮廓2.2、画出轮廓2.3、对轮廓从左到右排序并储存3、轮廓遍历3.1、获取轮廓参数3.2、计算轮廓外接矩形3.3、resize成合适大小3.4、存储外接矩…

后端校验(hibernate-validator)

目录一、介绍和依赖二、方法的 Model 参数校验三、方法的非 Model 参数校验四、常用注解五、快速失败六、自定义校验规则一、介绍和依赖 hibernate-validator 是 Java 中常用的后端校验框架 https://docs.jboss.org/hibernate/stable/validator/reference/en-US/html_single/【…

Windows中常用的网络排错命令

ping&#xff0c;ipconfig&#xff0c;route&#xff0c;arp&#xff0c;tracert&#xff0c;netstat, telnet常用命令及参数的操作 ping命令 应用场景&#xff1a;用于解决连接、可访问性和名称解析问题。 用法&#xff1a; ping 域名/IP地址 [参数] (如&#xff1a; pi…

【自然语言处理】【分布式训练及推理】推理工具DeepSpeed-Inference

相关博客 【自然语言处理】【分布式训练及推理】推理工具DeepSpeed-Inference 【自然语言处理】【chatGPT系列】大语言模型可以自我改进 【自然语言处理】【ChatGPT系列】WebGPT&#xff1a;基于人类反馈的浏览器辅助问答 【自然语言处理】【ChatGPT系列】FLAN&#xff1a;微调…

Android Studio实现志愿者系统

项目目录一、项目概述二、主要技术三、开发环境四、详细设计1、基础Activity2、活动信息3、成员信息4、百度地图5、Widget组件五、运行演示一、项目概述 本系统采用MVC架构设计&#xff0c;SQLite数据表有用户表、成员表和活动表&#xff0c;有十多个Activity页面。打开应用&a…

如何用Spring整合MyBatis和Junit

Spring整合MyBatis和Junit一. 整合MyBatis1. 目录&#xff1a;2. pom.xml&#xff1a;3. domain层&#xff1a;4. dao层&#xff1a;5. service层&#xff1a;AccountService接口类&#xff1a;AccountServiceImpl实现类&#xff1a;6. jdbc.properties配置文件&#xff1a;7. …

Day14 基于AOP的声明式事务控制

1 Spring 事务编程概述PlatformTransactionManager TransactionDefinition TransactionStatus2 搭建环境数据库准备一个账户表tb account;dao层准备一个AccountMapper&#xff0c;包括incrMoney和decrMoney两个方法;service层准备一个transferMoney方法&#xff0c;分别调用in…

2022年终总结-正月初七

这是毕业的第二年也是第二次写年终总结&#xff0c;元旦过后工作一直忙加上身体不舒服回家过年种种事情拖到现在。 在过去的一年中&#xff0c;爱情和事业都有一些进展。去了老丈人家、双方父母见面&#xff0c;陪小舅子打麻将&#xff0c;夏天在户外烤串等等。涨了工资&#…