题目7:猴子跳台阶 1级和3级
题目7:猴子跳台阶 1级和3级
一天一只顽猴想要从山脚爬到山顶
途中经过一个有n个台阶的阶梯,但是这个猴子有个习惯,每一次只跳1步或3步
试问?猴子通过这个阶梯有多少种不同的跳跃方式
输入描述:
输入只有一个这个数n 0<n<50
此阶梯有多个台阶
输出描述:
有多少种跳跃方式
实例:
输入
50
输出
122106097输入
3
输出
2
知识点:
动态规划:斐波那契数列
递归
同题型
https://leetcode-cn.com/problems/qing-wa-tiao-tai-jie-wen-ti-lcof/
找规律
公式:F(n) = F(n−1)+F(n−3)
n=0,f(0)=0
n=1,f(1)=1
[[1]]
n=2,f(2)=1
[[1,1]]
n=3,f(3)=2
[[1,1,1],[3]]
n=4,f(4)=f(3)+f(1)=3
[[1,1,1,1],[1,3],[3,1]]
n=5,f(5)=f(4)+f(2)=4
[[1,1,1,1,1],[3,1,1],[1,3,1],[1,1,3]]
n=6,f(6)=f(5)+f(3)=6
[[1,1,1,1,1,1],[3,1,1,1],[1,3,1,1],[1,1,3,1],[1,1,1,3],[3,3]]
public static void main(String[] args) {Scanner in = new Scanner(System.in);int n = in.nextInt();System.out.println(fun(n));}private static int fun(int n) {if (n == 1 || n == 2) {return 1;}if (n == 3) {return 2;}int sum = 0;if (n > 3) {sum = fun(n - 1) + fun(n - 3);}return sum;}
题目7:猴子跳台阶 1级和3级相关推荐
- 九度_题目1388:跳台阶
//跟斐波那契数列是一个性质的,先将数列求出来会更节省时间 1 秒内存限制:32 兆特殊判题:否提交:2662解决:1099 题目描述: 一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个 ...
- 商汤科技自动驾驶研究员2019校招笔试第一题-跳台阶(每次可跳1~m级,跳到第n级的跳法总数)
递推公式如下: n<=m时 v[n]=2<<(n-2) n>m时 v[n]=2*v[n-1]-v[n-1-m] 输入n超过10^18,考虑是维护一个供迭代的双向队列做动态规划, ...
- 剑指offer:面试题10- II. 青蛙跳台阶问题
题目:青蛙跳台阶问题 一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶.求该青蛙跳上一个 n 级的台阶总共有多少种跳法. 答案需要取模 1e9+7(1000000007),如计算初始结果为:10000 ...
- 7、斐波那契数列、跳台阶、变态跳台阶、矩形覆盖------------剑指offer系列
题目:斐波那契数列 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0). f(n) = f(n-1) + f(n-2) 基本思路 这道题在剑指offe ...
- 剑指Offer #08 跳台阶(递推)
题目来源:牛客网-剑指Offer专题 题目地址:跳台阶 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果). 题目解析 这是 ...
- 【剑指offer - C++/Java】8、跳台阶
在线题目链接:跳台阶 文章目录 1.题目描述 2.题目分析 3.代码 3.1 递归方法 3.11 Java代码 3.12 C++代码 3.2 动态规划 3.21 Java代码 3.22 C++代码 3 ...
- python青蛙跳台阶_Python算法题(一)——青蛙跳台阶
题目一(青蛙跳台阶): 一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 分析: 假设只有一级台阶,则总共只有一种跳法: 假设有两级台阶,则总共有两种跳法: ...
- python比赛积分类算法题_Python算法题(一)——青蛙跳台阶
题目一(青蛙跳台阶): 一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 分析: 假设只有一级台阶,则总共只有一种跳法: 假设有两级台阶,则总共有两种跳法: ...
- 青蛙跳台阶和变态跳台阶
青蛙跳台阶和变态跳台阶(python.剑指Offer) 一.题目描述 青蛙跳台阶题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的 ...
最新文章
- hdu 3308 LCIS 线段树 + 区间合并
- 怎么在同一页中分页_分库分表业界难题,跨库分页的几种常见方案
- 评审专家:基金本子“瘦”点好
- java背景图片加上组件_关于 java swing组件加背景图片的问题
- 计算机辅助设计的发展及应用,计算机辅助设计的发展与应用
- 【Java】《Java面向对象编程的三大特性》阅读笔记
- Go Web编程--应用ORM
- BIM工程信息管理新系统- 系统管理模块
- python爬虫知识点总结(三)urllib库详解
- 代写R语言assignment经常用到的代码语法分享!
- ORA29902执行ODCIIndexStart()例行程序中出错 SQL空间查询ST_Geometry配置
- 贵州省中职学校计算机教材电子版,中职计算机基础课件贵州省中职学校计算机应用基础教学工作计划.doc...
- PSP看电视软件测试,实战测试:PSP上运行Windows 95
- 【UWB定位】 - DWM1000模块调试简单心得 - 3
- 【财政决策支持系统DSS】财政支出OLAP分析模型参考【财政数据仓库DW】
- 利用LSB算法隐藏图片信息的MATLAB实现
- 解决TypeError: conv2d() received an invalid combination of arguments
- 如何实现广告图片总是显示在页面上方,并且随滚动条同步移动?
- _kbhit()以及_getch()函数的用法
- 移动通信各制式、调制的速率及频谱利用率(2G-4G)
热门文章
- POJ 3842 An Industrial Spy 快筛质数+STL乱搞
- 微前端——single-spa源码学习
- 举个栗子~Tableau 技巧(209):用自定义形状实现刻度环形图
- 鲁大师5月新机性能榜:红魔6R夺冠,“特供版”新机密集
- Java 开发者如何入门 Node.js 英文原文:Getting Started with Node.js for the Java Developer
- 简单聊一聊UseCompressedOops UseCompressedClassPointers这两个JVM参数
- 群晖消息通知 推送服务器,群晖点滴我知道 篇一:群晖 如何设置微信通知
- Halcon 第三章『Morphology形态学』◆第3节:顶帽运算与底帽运算
- 苹果市场占有率_为什么买了苹果电脑,却要安装Windows系统
- 关于Spring Cloud:Mapper<>中的泛型红线:Type ‘org.apache.ibatis.annotations.Mapper‘ does not have type paramet