39级台阶问题

39级台阶——递归算法求解 蓝桥杯压轴题——39级台阶问题 阅读详情

39级台阶问题

小明看完电影《第39级台阶》,离开电影院的时候,他数了数视觉的台阶数,恰好是39级。
站在台阶前,他突然又想起一个问题:如果我每一步只能迈上1个或2个台阶,先迈左脚,然后左右交替,最后一步迈右脚,也就是说一共要迈偶数步。那么,上完39级台阶,有多少种不同的上法呢?
请利用计算机的优势,帮助小明寻找答案。

#include<stdio.h>

int count=0;        //记录有多少种
int foot=0;     //记录走的步数

void backtrack(int t)   //传值:走的台阶数
{
    if(t==39 && foot%2==0)      //条件:上完39级台阶,一共要迈偶数步
    {
        count++;        //增加一种方法
        return;
    }

    foot++;     //一步走一个台阶的情况
    t++;
    if(39>=t)   //减枝
        backtrack(t);
    t--;
    foot--;

    foot++;     //一步走一个台阶的情况
    t+=2;
    if(39>=t)   //减枝
        backtrack(t);
    t-=2;
    foot--;
}

int main()
{
    backtrack(0);
    printf("一共有%d种方法。\n",count);
    return 0;
}

/*
思路:
  回溯一步走一个台阶的情况和一步走一个台阶的情况。
  截止条件:走39台阶,步数为偶数步。
*/
递归经典问题--第39级台阶 题目: 小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级! 站在台阶前,他突然又想着一个问题:/如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢? 输出格式: 输出一个整数 该题目用到递归,划分为每次走一步或者每次走两步,最后一步是迈右脚意味着走的步数一定是偶数步。代码如下: #include<iostream> using namespace std; int 阅读详情

相关推荐

算法教程2:39级台阶问题

题意小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!站在台阶前,他突然又想着一个问题:如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?请你利用计算机的优势,帮助小明寻找答案。 思路利用DFS进行深搜,用一个标志变量来记录左右脚的平衡,如果初始的flag为0,那么

阳光心态,健康人生的博客 1752

39级台阶

小明刚刚看完电影《第39级台阶》。离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!站在台阶前,他突然又想着一个问题:如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?请你利用计算机的优势,帮助小明寻找答案。 public class Main { static int count; ...

weixin_30546933的博客 892

39台阶问题

题目标题: 第39级台阶 小明刚刚看完电影《第39级台阶》, 离开电影院的时候,他数了数礼堂前的台阶数, 恰好是39级! 站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上1个或2个台阶。 先迈左脚,然后左右交替,最后一步是迈右脚, 也就是说一共要走偶数步。那么,上完39级台阶, 有多少种不同的上法呢?

第39级台阶问题(非递归)

题目如下 思路 递归全靠找规律,我从0阶到16阶中终于找出了规律,公式如图 代码如下 #include&amp;amp;amp;amp;amp;lt;stdio.h&amp;amp;amp;amp;amp;gt; #include&amp;amp;amp;amp;amp;lt;stdlib.h&amp;amp;amp;amp;amp;gt; int digui(int n) { int m = 0; if (n == 0) m = 0;

小白的Coding之旅 1014

第39级台阶

题目标题: 第39级台阶 小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级! 站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢? 请你利用计算机的优势,帮助小明寻找答案。 要求提交的是一个整数。 注意:不要提交解答过程,或其它的辅助说明文字。

RK3588 MIPI屏幕调试避坑指南:双通道8Lane下DSC压缩屏的花屏、分层问题排查实录

本文详细解析了RK3588平台在双通道8Lane MIPI接口下调试DSC压缩屏时遇到的花屏、分层问题。通过硬件信号完整性检查、软件配置验证及帧数据分析,提供了一套系统化的排查方法,并深入探讨了初始化序列优化和双通道同步机制,帮助工程师高效解决高分辨率屏幕显示异常问题。

weixin_27015733的博客 282

【★】39级台阶

小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是 `39` 级! 站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上 `1` 个或 `2` 个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完 `39` 级台阶,有多少种不同的上法呢?

「Inspire Creativity, Enrich Life」 539

别再羡慕专业版!用这个批处理脚本,一键给Win11家庭版装上官方沙盒

本文详细介绍了如何通过批处理脚本在Windows 11家庭版上安装官方Windows沙盒(Windows Sandbox),无需复杂操作即可享受专业版功能。脚本自动激活系统内置组件,提供安全隔离的虚拟化环境,适用于软件测试、安全浏览等场景。

weixin_26757925的博客 497

第39级台阶问题

题目 分析 刚开始认为左脚右脚也有关系,仔细读了遍题,看了下网上的分析,才明白。 简单描述下问题:有39级台阶,每次可以上一个或者两个,走完台阶刚好走的是偶数步有多少种走法。 类似问题:青蛙跳台阶问题 先不考虑是偶数步还是奇数步,看看每次走一个台阶或两个台阶有多少种走法,设台阶个数为n。 第一步走一个台阶,则剩下n-1个台阶的走法 第一步走两个台阶,剩下n-2个台阶的走法 当n = 1时,...

ahojcn 的博客 1107

ADP在线自适应动态规划之持续激励条件

在线自适应动态规划之持续激励条件 在在线自适应动态规划算法中,需要通过满足持续激励条件(Persistent Excitation Condition)保证critic网络权值的收敛性,一般的做法都是在算法初期在输入端引入探测噪声(Probing Noises)来保证数据的丰富性,但是由于在输入端引入噪声会给系统带来一些不好的影响,甚至可能破坏系统的稳定性。因此,出现了一些其他的方法来避免引入探测噪声,受阅读所限,我目前了解两种: Concurrent Learning(CL) Experience Re

qq_43435956的博客 6162

TI毫米波雷达人体生命体征(呼吸、心跳)信号提取算法(IWR6843ISK+DCA1000EVM)

本篇内容介绍的算法主要为传统的提取算法,但可实现在1m内呈现良好的检测效果,能够提取出非常可观的呼吸和心跳波形,但在超出1m的距离后便不适用这个算法了。远距离检测呼吸和心跳始终是这个领域一个很大的挑战。要实现远距离检测可在提取相位信号、分离呼吸和心跳信号上进行改进处理,例如线性解调提取相位、改进的VMD分离呼吸和心跳算法。

m0_61934621的博客 3万+

第39级台阶问题(递归算法)

代码 #include&amp;amp;amp;lt;stdio.h&amp;amp;amp;gt; int p=0; void digui(int n,int i) { if(n&amp;amp;amp;lt;0) return; if(n==0&amp;amp;amp;amp;&amp;amp;amp;amp;i%2==0) { p++; return; } digui(n-2,i+1); digui(n-1,

小白的Coding之旅 3429

VOLTE信令流程-IMS注册篇(五)

目录 VOLTE信令流程-IMS 注册 VOLTE信令流程-IMS 注册/注销 VOLTE信令流程-VoLTE呼叫流程 VoLTE-VoLTE VoLTE-CS CS-VoLTE CS-CS VOLTE信令流程 VOLTE信令流程-VOLTE-VOLTE信令 VOLTE信令流程-INVITE详细信息 VOLTE信令流程-eSRVCC信令流程 VOLTE信令流程-IP短信 VOLTE信令流程-IMS 注册 IMS注册流程简述  获取鉴权向量 IMS用户将注...

gender123的博客 2万+

002-第39级台阶问题

题目: 小明刚刚看完电影《第39级台阶》。离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级。站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢? 代码: #include <stdio.h> int count=0; void trac...

482

Qt代码-软件商店

ui->statusBar->showMessage(QString("%1 已卸载").arg(app["name"].toString()));ui->statusBar->showMessage(QString("开始下载 %1...").arg(app["name"].toString()));QString("%1 已下载完成,是否立即安装?ui->statusBar->showMessage(QString("%1 下载完成").arg(app["name"].toString()));

寒寒豆豆软件公司的博客 112

飞牛fnNAS搭建web版微信

摘要:本文介绍了一种通过Docker在飞牛NAS上部署微信客户端的方法,实现24小时同步微信聊天记录。具体步骤包括:1)激活飞牛NAS的Docker功能并配置镜像加速源;2)创建专用文件夹并下载docker-wechat镜像;3)设置容器参数并部署微信客户端;4)通过局域网或ZeroTier内网穿透实现远程访问。相比传统Windows/Linux方案,该方法资源占用更低,适合需要长期保存微信聊天记录的用户。

dgnankai的专栏 3337

39级台阶问题(回溯算法)

小明看完电影《第39级台阶》,离开电影院的时候,他数了数视觉的台阶数,恰好是39级。     站在台阶前,他突然又想起一个问题:如果我每一步只能迈上1个或2个台阶,先迈左脚,然后左右交替,最后一步迈右脚,也就是说一共要迈偶数步。那么,上完39级台阶,有多少种不同的上法呢? 算法思想:决策树,可以说是非常简单了,分析就不必了吧~ #include //初始化 int

李酒酒的博客 1688

Qt和FFmpeg的视频压缩工具

m_progressDialog = new QProgressDialog("正在压缩视频...", "取消", 0, 100, parent);QString file = QFileDialog::getOpenFileName(this, "选择视频文件", "",QString file = QFileDialog::getSaveFileName(this, "保存压缩文件", "",QMessageBox::warning(parent, "错误", "请设置输入和输出文件路径");

寒寒豆豆软件公司的博客 104

39级台阶问题(c语言)(无偶数限制)

如题:    小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!    站在台阶前,他突然又想着一个问题:    如果我每一步只能迈上1个或2个台阶。那么,上完39级台阶,有多少种不同的上法呢?    请你利用计算机的优势,帮助小明寻找答案。#include &lt;stdio.h&gt; int step(int t) /*设置一个函数来进...

bibigod的博客 2650

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

小明刚刚看完电影《第39级台阶》离开电影院的时候,他数了一下礼堂前的台阶,刚好是39级 站在台阶前,他突然又想到了一个问题 如果我每步只能迈上一个或者两个台阶,先迈左脚,然后左右交替,也就是说一共

package day01; /** 小明刚刚看完电影《第39级台阶》离开电影院的时候,他数了一下礼堂前的台阶,刚好是39级 站在台阶前,他突然又想到了一个问题 如果我每步只能迈上一个或者两个台阶,先迈左脚,然后左右交替,也就是说一共要走偶数步 那么,上完39级台阶,有多少种不同的上法呢 * * * */ public class _第39级台阶 { public static void main(String[] args) { f(39, 0); System.out.p

林中有神君 1992

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

3240: 第39级台阶 (存在问题)

3240: 第39级台阶 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 46  Solved: 17 [Submit][Status][Web Board] Description 小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!  站在台阶前,他突然又想着一个问题:  如果我每一步只能迈

LMengi000的博客 412

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

39级台阶问题(递归)

题目 理解 左右脚其实就是偶数步,不但要考虑偶数步,还要考虑第一步跨一个台阶还是两个台阶,每跨一步所跨的步数就要加1,刚开始我只想到用n一个变量,但是发现做不出来,需要两个变量n,m,n是台阶数,m是所跨步数,问题求有多少种满足条件的方法,必须有个sum来做计数器。递归还是挺难想的。 #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h&gt...

weixin_43688527的博客 410
上一篇: 众数问题
下一篇: 连续邮资问题
烂笔头NI
博客等级 码龄9年 7粉丝 27原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值