题目1:39级台阶

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

菜鸟分析:

第一级台阶:左脚 可能为1 (一步2个) 右脚 可能为0
第二级台阶:左脚 可能为1(一步2个)  右脚 可能为1(一步1个)
..........
第39级台阶:  最后一步是迈右脚
                    1.(38左)(一步1个)        2.(37左)(一步2个)  
可以写两个函数左右脚函数,每个函数都有三种情况:
第一级台阶 
第二级台阶
大于等于三级台阶 (与前一步有关,分两种情况一步一个台阶,一步两个台阶,而且还和这一级台阶是左右脚有关。所以直接从第39级台阶往回分析,也就是递归,因为第39级台阶必为右脚)
c++代码

#include<iostream>
using namespace std;
int left(int n);
int right(int n);
//此步为左脚
int left(int n){if(n==1) return 1;if(n==2) return 1;else return(right(n-1)+right(n-2));//两种情况 上一步必为右脚 }
//此步为右脚
int right(int n){if(n==1) return 0;if(n==2) return 1;else return(left(n-1)+left(n-2));// 两种情况 上一步必为左脚  }
int main()
{cout<<right(39)<<endl;return 0;
} 

java代码

public class 第39级台阶 {public static void main(String[] args) {// TODO Auto-generated method stubSystem.out.println(right(39));}//此步为左脚 public static int left(int n){if(n==1) return 1;if(n==2) return 1;else return(right(n-1)+right(n-2));//上一步必为右脚 }//此步为右脚 public static int right(int n){if(n==1) return 0;if(n==2) return 1;else return(left(n-1)+left(n-2));上一步必为左脚  }}

同学的代码

第39级台阶 递归相关推荐

  1. 【蓝桥java】递归基础之39级台阶

    题目: 小明刚刚看完电影<第39级台阶>.离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级! 站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上1个或2个台阶.先迈左脚,然后左 ...

  2. 第三届蓝桥杯省赛---第39级台阶

    第39级台阶 小明刚刚看完电影<第39级台阶>,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级! 站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上1个或2个台阶.先迈左脚, ...

  3. 高斯日记、猜年龄、世纪末的星期、排他平方数、马虎的算式、振兴中华、组素数、第39级台阶

    高斯日记 题目 大数学家高斯有个好习惯:无论如何都要记日记. 他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210 后来人们知道,那个整数就是日期,它表示那一天是高斯出生后 ...

  4. 蓝桥杯真题 13省3-第39级台阶 小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级! 站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上1个或2个台

    问题描述 小明刚刚看完电影<第39级台阶>,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级! 站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上1个或2个台阶.先迈左脚,然后 ...

  5. 递归算法—第39级台阶

    递归算法 基本思想: 递归算法一般用于将较为复杂的规模较大的问题分解成规模较小的同类问题,通过函数或子过程直接或间接调用自身,以小规模问题解决复杂问题,使复杂问题简单化,使程序更加简洁,是解决很多计算 ...

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

    题目如下 小明刚刚看完电影<第39级台阶>.离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级! 站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上1个或2个台阶.先迈左脚,然后 ...

  7. 蓝桥杯 第39级台阶 递推动态规划

    网上答案写的都和狗屎一样.看不下去.自己写一个 描述如下 小明刚刚看完电影<第39级台阶>,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级! 站在台阶前,他突然又想着一个问题:如果 ...

  8. 标题: 第39级台阶

    小明刚刚看完电影<第39级台阶>,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级! 站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上1个或2个台阶.先迈左脚,然后左右交替, ...

  9. 第39级台阶(暴力搜索)

    小明刚刚看完电影<第39级台阶>,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级! 站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上1个或2个台阶.先迈左脚,然后左右交替, ...

最新文章

  1. JavaBean中DAO设计模式介绍
  2. 在.net开发中使用Log4Net组件
  3. 详解操作系统中虚拟内存与物理内存的关系
  4. mysql的length函数和char_length中文字符长度计算函数
  5. Jury Compromise POJ - 1015
  6. linux内核--设备驱动程序(学习笔记)
  7. SpringBoot - 静态资源映射处理
  8. 怎么用计算机算一元三次方程,一元三次方程计算器求解(附使用方法)
  9. gels imagej 图片处理_科研论文作图之ImageJ
  10. 列宽一字符等于多少厘米_Excel中行高与列宽单位和厘米的转换
  11. lasermaker海绵宝宝图纸
  12. 2023.3.21日学习收获
  13. Kivy转apk——使用打包虚拟机(亲测~)
  14. 一个完整的项目管理流程包括什么?项目管理者必看
  15. win10如何修改hosts文件?
  16. 使用ngrok进行域名映射
  17. 【SpringBoot入门】SpringBoot的配置
  18. Building my first maching learning system
  19. Java 实现 淘宝秒杀 聚划算 自动提醒 源码
  20. Pixhawk6c编译

热门文章

  1. 关于ORACLE 分区表的介绍
  2. 一个月10倍涨幅的DeFi项目,我们是怎么提前找到的?
  3. iBATISSpring合奏(五)--整合lucene搜索表字段内容
  4. Winform的控件学习整理篇
  5. 现在必备的网站和软件你知道几个
  6. Python基础——format格式化
  7. pyinstall :打包 .exe 文件报错AttributeError: module ‘enum‘ has no attribute ‘IntFlag‘
  8. 【codeforces round#800 D题 Fake Plastic Trees】树上贪心
  9. 四“知”搞定职场面试关
  10. Vue组件keepAlive实现返回上一页保存原数据