牛客网刷题java之变态跳台阶一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
题目:
一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
分析:
其实和普通的只能跳一个和两个台阶的思路是一样的,都是为了求迭代表达式。
普通跳台阶(只能跳1或2):
假设我第一次跳1个,那么剩下的次数就是f(n-1)
假设我第一次跳2个,那么剩下的次数就是f(n-2)
所以f(n)=f(n-1)+f(n-2),然后再加上前两项的特殊项就可以得到通用表达式
变态跳台阶(可以跳1到n):
假设我第一次跳1个,那么剩下的次数就是f(n-1)
假设我第一次跳2个,那么剩下的次数就是f(n-2)
。。。。
假设我第一次跳n个,那么剩下的次数就是f(n-n)=f(0)
所以f(n)=f(n-1)+f(n-2)+。。。f(0)
然后f(n-1)=f(n-2)+f(n-3)+。。。f(0),它正好是上面表达式除了f(n-1)以外的式子
所以f(n)=2*f(n-1),然后再加上前两项特殊项就可以了
得到通式:
1 ,(n=0 )
f(n) = 1 ,(n=1 )
2*f(n-1),(n>=2)
代码:
public class Solution {public int JumpFloorII(int target) {if (target <= 0) {return -1;} else if (target == 1) {return 1;} else {return 2 * JumpFloorII(target - 1);}}
}
牛客网刷题java之变态跳台阶一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。相关推荐
- 牛客网刷题java之(斐波那契数列)一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
题目:一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果). 分析: 对于本题,前提只有 一次 1阶或者2阶的跳法. a.如果两种跳法, ...
- 牛客网刷题-java
大部分解答为牛客网各位同学的精彩回答,本文只是选择一些互联网常考题目记录备忘. 1.一个类的构造器可以调用这个类中的其他构造器: this的作用其中一个就是在一个构造方法中调用另一个构造方法,格式为t ...
- 【牛客网刷题】中秋节前开启java专项练习错题总结第一天
[牛客网刷题]中秋节前开启java专项练习错题总结第一天 概述 写在前面 错题分析 值得记录的错题 总结 写在最后 概述 还有十几天就到中秋节了,从此又老了一岁,也多了一年的知识积累.对于这样一个特殊 ...
- 牛客网刷题之SQL篇:非技术快速入门39T
导航 前序 一.简单的关键字练习 1-10 二.知识点复习之 ==运算符== 1.算数运算符 2.比较运算符 3.逻辑运算符 4.位运算符 三.10-28T 0.简单题总结 1. SQL18 ==分组 ...
- 牛客网 刷题前的准备工作(输入 输出 如何接收?)
牛客网 刷题前的准备工作 牛客网 刷题前的准备工作 1. 数据读取接受问题 2.牛客刷题前的准备: 2.1. 弄清楚输入输出的行数关系 3.代码怎么写 3.1. 在牛客上测试自己的模板代码,是否能正确 ...
- 牛客网刷题记录 || 结构体和类
这是牛客网刷题记录专栏第五篇博文,先给大家简单介绍一下牛客网,牛客网是一个集笔面试系统.题库.课程教育.社群交流.招聘内推于一体的优质网站,牛客网题库中包含几万道题目,注重通过边学边练的模式揽获编程人 ...
- 牛客网刷题记录 || 循环
这是牛客网刷题记录专栏第七篇博文,先给大家简单介绍一下牛客网,牛客网是一个集笔面试系统.题库.课程教育.社群交流.招聘内推于一体的优质网站,牛客网题库中包含几万道题目,注重通过边学边练的模式揽获编程人 ...
- 2023年大年初一 —— 牛客网刷题经验分享~
2023年大年初一 -- 牛客网刷题经验分享~
- verilog牛客网刷题代码汇总
verilog牛客网刷题代码汇总 作者:安静到无声 个人主页 作者简介:人工智能和硬件设计博士生.CSDN与阿里云开发者博客专家,多项比赛获奖者,发表SCI论文多篇. Thanks♪(・ω・)ノ 如果 ...
最新文章
- 虚幻引擎4:打造街机经典游戏学习教程 Unreal Engine 4: Create an Arcade Classic
- 使用 .NET WinForm 开发所见即所得的 IDE 开发环境,实现不写代码直接生成应用程序...
- 「深度」在水下机器人开疆扩土之时,避免沦为泡沫应成为全行业重点
- PIC单片机 电容式触摸检测
- 洛谷 - P1886 滑动窗口(单调队列/线段树)
- 基于Java+SpringBoot+vue+element实现火车订票平台管理系统
- 站在K2角度审视流程--任务的独占与释放
- BZOJ3653: 谈笑风生
- FullCalendar应用——整合农历节气和节日
- win7域用户生成临时文件夹
- Visual C++ 内存泄露检测工具(VLD)
- iTunes恢复备份时失败?3个常见原因
- 百度网盘突破下载限速
- ADA本月上涨100%,背后或有三个原因
- 时序分析 29 - 时序预测 - 格兰杰因果关系(下) python实践2
- AdMob(app内嵌广告)使用入门
- Android之仿微信发朋友圈图片选择功能
- ACM里的期望和概率问题 从入门到精(入)通(土)
- Vite resolve.alias
- 深入理解Android Crash 流程
热门文章
- Filecoin(FIL) 交易离线签名
- STM32H7 DAC2+BDMA
- python检测字符串是否包含特殊符号
- 计算机vb实验感想,vb课程设计心得体会范文(精选3篇)
- SpringBoot工程接入第三方支付渠道支付宝(C扫B支付)
- Kettle连接Mysql报错:Driver class org.gjt.mm.mysql.Driver could not be found
- Mac OS X 窗口操作快捷键
- 讯飞AIUI ubuntu linux使用
- [视觉Slam十四讲(2)踩坑记录]第3讲:Fatal error :Eigen/core没有那个文件或目录
- 我努力了十年,才让我的老婆不上班