【LeetCode力扣】青蛙跳台阶问题,一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n 级的台阶总共有多少种跳法。
学习目标:
目标:熟练运用 Java所学知识
题目内容:
本文内容: 使用Java实现:青蛙跳台阶问题
文章目录
- 学习目标:
- 题目内容:
- 题目描述
- 实现思路:
- 实现代码:
- 运行结果:
题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n 级的台阶总共有多少种跳法。
答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。
示例 1:
输入:n = 2
输出:2
示例 2:
输入:n = 7
输出:21
示例 3:
输入:n = 0
输出:1
实现思路:
第一眼看到这个问题一点思路都没有,就把前四项结果列了出来,发现和我前段时间做的斐波那契数列有点像,然后就想到了递归;
先设第n个台阶有f(n)种上法,会发现最后一步(上到第n个台阶的那一步)只有两种上法;
第一种从n-1上一个;
第二种从n-2上两个;
所以f(n)就可以替换成f(n-1)+f(n-2),就得到的斐波那契数列的递推公式,题目就解决了
实现代码:
public class Practice_01 {public static void main(String[] args) {System.out.println(numWays(6)); }public static int numWays(int n) {int a = 1;int b = 1;int c = 0;if (n < 2) return 1;else {for (int j = 0; j < n - 1; j++) {c = a + b;a = b;b = c % 1000000007;}}return b;}
}
运行结果:
13
【LeetCode力扣】青蛙跳台阶问题,一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n 级的台阶总共有多少种跳法。相关推荐
- [递归]一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
这题是用C写的~ 在牛客上半天找不着ACM模式,练习模式里只有核心代码模式 这样用C语言编译器就不能自定义函数啊,不鸡肋吗??? 解决方法:在核心代码模式下用C++编译器(反正C++完全兼容C的不是吗 ...
- 【python逻辑算法题】一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法
文章目录 一.题目描述 二.问题分析 三.代码分析与逻辑(python3实现) 四.源码及运行结果 总结 提示:以下是本篇文章正文内容: 一.题目描述 题目:一只青蛙一次可以跳上1级台阶,也可以跳上2 ...
- c语言青蛙游戏,c语言:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法?...
一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法? 解:把n级台阶时的跳法记为f(n),当n>2时,第一次跳的时候有两种不同的选择:一是第一次只跳1级,此 ...
- 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法?(递归与动态规划)
一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法? private static HashMap<Integer, Long> record = n ...
- 牛客网刷题java之(斐波那契数列)一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
题目:一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果). 分析: 对于本题,前提只有 一次 1阶或者2阶的跳法. a.如果两种跳法, ...
- 牛客网刷题java之变态跳台阶一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
题目: 一只青蛙一次可以跳上1级台阶,也可以跳上2级--它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 分析: 其实和普通的只能跳一个和两个台阶的思路是一样的,都是为了求迭代表达式. ...
- 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
import java.util.Scanner;/* 一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法.请用递归和循环2中方法实现答案来源:https://w ...
- 一只青蛙一次可以跳上1级台阶也可以跳上2级求该青蛙跳上一个n级的台阶总共有多少种跳法?
一只青蛙一次可以跳上1级台阶也可以跳上2级求该青蛙跳上一个n级的台阶总共有多少种跳法? 解题思路 :每次跳1到n,那么如果是n阶台阶,一次就可能跳1~n阶(话说n=1000,青蛙腿肯定绑火箭了),乍一 ...
- (java)跳台阶:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
文章目录 题目描述 思路 解法一:递归暴力破解 解法二: 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果). 思路 解法一 ...
最新文章
- React Native JSBundle拆包之原理篇
- 十款让 Web 前端开发人员更轻松的实用工具
- 请问运行py文件的时候怎么样可以不让那个黑框一闪...
- python discuz搜索api_python如何模拟搜索引擎分词
- 【nyoj - 252】 01串(简单dp)
- Atom飞行手册翻译: 4.1 配置API
- 前缀式计算(前缀表达式)
- 【转】网络安全-------防止被抓包
- Python:每日一题008
- 生成国庆头像网站的源码及搭建教程
- java给文件夹加密码_用JavaScrpt 实现文件夹轻松加密 (转)
- C++异常处理throw
- 版号审批重启,游戏行业有望尽早度过寒冬?
- tar命令 – 打包和备份的归档工具
- 2017-2018 ACM-ICPC Southwestern European Regional Programming Contest (SWERC 2017) G: Cordon Bleu
- C/C++用海伦公式求三角形面积(同时运用条件语句不断优化程序)
- 解决vue项目在IE浏览器打不开的问题
- 基于STM32的电机--电机概述
- [渝粤教育] 南京信息工程大学 会计学 参考 资料
- 20个时尚相机转场PR预设