云夜OVO 2022-01-17 14:24 采纳率: 70%
浏览 44
已结题

关于蓝桥杯递归的问题如何理解,感觉大多数递归题解太难理解,下一次遇到问题还是不会。

题目标题: 第39级台阶

小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!

站在台阶前,他突然又想着一个问题:

如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?


请你利用计算机的优势,帮助小明寻找答案。
  • 写回答

2条回答 默认 最新

  • bekote 2022-01-17 16:13
    关注
    
    #include<iostream>
    using namespace std;
    //记录有多少种走法
    int count=0;
    //stair表示上了多少个台阶
    //step表示已经走了多少步
    void fun(int stair,int step)
    {
         if(stair > 39)return; 
         if(stair==39)    
         {
             //上了39个台阶
             if(step%2 == 0)count++;
             //走的是偶数步,记录一种走法
             return;
         } 
         fun(stair+1,step+1);    //上一个台阶
         fun(stair+2,step+1);    //上两个台阶 
    }
    int main()
    {
        fun(0,0);
        cout<<count<<endl;
        return 0; 
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 1月27日
  • 已采纳回答 1月19日
  • 创建了问题 1月17日

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 R语言卸载之后无法重装,显示电脑存在下载某些较大二进制文件行为,怎么办
  • ¥15 java 的protected权限 ,问题在注释里