当前位置:网站首页>leetcode 剑指 Offer 10- II. 青蛙跳台阶问题
leetcode 剑指 Offer 10- II. 青蛙跳台阶问题
2022-08-05 08:56:00 【Promising_mi】
一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n 级的台阶总共有多少种跳法。
答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。
示例 1:
输入:n = 2
输出:2
示例 2:
输入:n = 7
输出:21
示例 3:
输入:n = 0
输出:1
提示:
0 <= n <= 100
思路:
其实和 斐波那契数列 的思想是一样的,到达第n阶台阶的方法有 f(n-1) 和 f(n-2) 种方法。
从第 n-1 到达 第 n 阶就跳一次就够了,所以只有一种方法,而从第 n-2 到 第 n 阶可以一次跳2阶或者一次跳一阶跳2次,后者(一次跳一阶的方法)已经算在 从 n-1 到第 n 阶的方法里了。
所以从 n-2 到 第 n 阶只有唯一的跳2阶的方法了。
所以 f(n) = f(n-1)+f(n-2)
class Solution {
public:
int numWays(int n) {
/*int a=1,b=2; //这里注释掉的代码使用的是动态规划 int h; for(int i=2;i<=n;++i){ h=a+b; h%=1000000007; a=b; b=h; } return a; */
if(n<=1)
return 1;
int dp[n+1];
dp[1]=1;
dp[2]=2;
for(int i=3;i<=n;++i){
dp[i]=dp[i-1]+dp[i-2]; //这里使用数组来存储数值,避免多次重复运算
dp[i]%=1000000007;
}
return dp[n];
}
};
边栏推荐
- Rotation of the displayed value on the button
- MySQL database error The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid)
- ps怎么把图片变清晰,自学ps软件photoshop2022,简单快速用ps让照片更清晰更有质感
- mySQL数据库初始化失败,有谁可以指导一下吗
- ts/js function pass parameter with function writing
- php fails to write data to mysql
- Random code generation
- 15.1.1、md—md的基础语法,快速的写文本备忘录
- Redis cache and existing problems--cache penetration, cache avalanche, cache breakdown and solutions
- 使用 External Secrets Operator 安全管理 Kubernetes Secrets
猜你喜欢
国际原子能机构总干事称乌克兰扎波罗热核电站安全形势堪忧
七夕看什么电影好?爬取电影评分并存入csv文件
吴恩达深度学习deeplearning.ai——第一门课:神经网络与深度学习——第二节:神经网络基础(下)
最 Cool 的 Kubernetes 网络方案 Cilium 入门教程
基因数据平台
宝塔实测-搭建中小型民宿酒店管理源码
XSS靶机通关以及XSS介绍
Creo 9.0 基准特征:基准坐标系
mySQL数据库初始化失败,有谁可以指导一下吗
Pagoda measurement - building small and medium-sized homestay hotel management source code
随机推荐
CROS和JSONP配置
MySQL database error The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid)
MM上街前的折腾(有趣)
sphinx matches the specified field
egg framework
让程序员崩溃的N个瞬间(非程序员误入)
这样写有问题吗?怎么在sql-client 是可以做到数据的同步的
工程制图知识点
sql server中 两表查询 平均数 分组
Detailed explanation of DNS query principle
thinkPHP5 realizes clicks (data increment/decrement)
sql server收缩日志的作业和记录,失败就是因为和备份冲突了吗?
行走社会100绝招
mySQL数据库初始化失败,有谁可以指导一下吗
Walk 100 trick society
openpyxl操作Excel文件
请问如果想往mysql里面写数据,直接用flink-connector-jdbc就可以吧,可是我在f
16种香饭做法全攻略
16 kinds of fragrant rice recipes
Hbuilder 学习使用中的一些记录