当前位置: 首页 > news >正文

Leetcode 3154. Find Number of Ways to Reach the K-th Stair

  • Leetcode 3154. Find Number of Ways to Reach the K-th Stair
    • 1. 解题思路
    • 2. 代码实现
  • 题目链接:3154. Find Number of Ways to Reach the K-th Stair

1. 解题思路

这一题思路上就是一个动态规划,我们只需要确定一下运行的终止条件,然后写一下地推函数即可。

显然,由于减一操作不能连续进行,因此,如果某一次jump之后到达的位置大于k+1,此时必然就不可能再到达目标位置k了,我们跳出迭代即可。

2. 代码实现

给出python代码实现如下:

class Solution:def waysToReachStair(self, k: int) -> int:@lru_cache(None)def dp(loc, jump, allow_op1):ans = 0if loc == k:ans += 1if allow_op1 and loc != 0:ans += dp(loc-1, jump, False)if loc + jump <= k+1:ans += dp(loc+jump, jump * 2, True)return ansans = dp(1, 1, True)return ans  

提交代码评测得到:耗时116ms,占用内存18.4MB。

相关文章:

Leetcode 3154. Find Number of Ways to Reach the K-th Stair

Leetcode 3154. Find Number of Ways to Reach the K-th Stair 1. 解题思路2. 代码实现 题目链接&#xff1a;3154. Find Number of Ways to Reach the K-th Stair 1. 解题思路 这一题思路上就是一个动态规划&#xff0c;我们只需要确定一下运行的终止条件&#xff0c;然后写…...

Vue3/Vite引入EasyPlayer.js播放H265视频错误的问题

一、引入EasyPlayer.js github链接:GitHub - EasyDarwin/EasyPlayer.js: EasyPlayer.js H5播放器 将demo/html目录下的 EasyPlayer-element.min.js、EasyPlayer-lib.min.js、EasyPlayer.wasm、jquery.min.js 复制到vue3工程的public目录下,注意,vue3 vite的index.html文件…...

CentOS 7安装alertmanager

说明&#xff1a;本文介绍如何在CentOS 7安装alertmanager&#xff1b; Step1&#xff1a;下载安装包 访问Github仓库&#xff0c;下载对应版本的alertmanager安装包 https://github.com/prometheus/alertmanager/releases 如何查看自己系统的信息&#xff0c;可参考下图中的…...

YOLOv10详细解读 | 一文带你深入了解yolov10的创新点(附网络结构图 + 举例说明)

前言 Hello大家好&#xff0c;我是Snu77&#xff0c;继YOLOv9发布时间没有多久&#xff0c;YOLOv10就紧接着发布于2024.5.23号&#xff08;不得不感叹YOLO系列的发展速度&#xff0c;但要纠正大家的观点就是不是最新的就一定最好&#xff09;&#xff01; 本文给大家带来的是…...

【openlayers系统学习】3.5colormap详解(颜色映射)

五、colormap详解&#xff08;颜色映射&#xff09; ​colormap​ 包是一个很好的实用程序库&#xff0c;用于创建颜色图。该库已作为项目的依赖项添加&#xff08;1.7美化&#xff08;设置style&#xff09;&#xff09;。要导入它&#xff0c;请编辑 main.js​ 以包含以下行…...

Redis教程(十五):Redis的哨兵模式搭建

一、搭建Redis一主二从 分别复制三份Redis工作文件夹&#xff0c;里面内容一致 接着修改7002的配置文件&#xff0c;【redis.windows-service.conf】 port 7002 改成 port 7002 slaveof 127.0.0.1 7001 7003也同样修改 port 7003 slaveof 127.0.0.1 7001 这样就指定了700…...

【C语言】8.C语言操作符详解(3)

文章目录 10.操作符的属性&#xff1a;优先级、结合性10.1 优先级10.2 结合性 11.表达式求值11.1 整型提升11.2 算术转换11.3 问题表达式解析11.3.1 表达式111.3.2 表达式211.3.3 表达式311.3.4 表达式411.3.5 表达式5: 11.4 总结 10.操作符的属性&#xff1a;优先级、结合性 …...

离线初始化k8s

导出和导入所有必要的 Kubernetes 镜像&#xff0c;使用阿里云作为源。 在能访问外网的机器上拉取镜像 首先&#xff0c;在有外网访问的机器上运行以下命令来拉取所有 Kubernetes v1.29.5 版本需要的镜像&#xff1a; kubeadm config images pull --image-repository regist…...

C++字符编码 cppp-reiconv库使用详解

经常写一些控制台小程序&#xff0c;常常会遇到输出中文乱码的问题&#xff0c;在windwos下可以使用MultiByteToWideChar转换字符编码&#xff0c;但跨平台就需要cppp-reiconv这样的第三方字符编码处理库&#xff0c;且开源。 一、下载cppp-reiconv库的源码和静/动态库 GitHu…...

通过继承React.Component创建React组件-5

在React中&#xff0c;V16版本之前有三种方式创建组件&#xff08;createClass() 被删除了)&#xff0c;之后只有两种方式创建组件。这两种方式的组件创建方式效果基本相同&#xff0c;但还是有一些区别&#xff0c;这两种方法在体如下&#xff1a; 本节先了解下用extnds Reac…...

PgSQL内核机制 - 算子执行统计元组个数

PgSQL内核机制 - 算子执行统计元组个数 我们在执行explain analyze观察执行计划执行情况时&#xff0c;时常通过每个算子实际执行结果来分析SQL的执行&#xff0c;其中有一项“rows XXX”表示执行的行数&#xff08;这里姑且先认为是执行的真实行数&#xff09;。但有些场景下…...

Ubuntu/Linux 安装Paraview

文章目录 0. 卸载已有ParaView1. 安装ParaView1.1 下载后安装 2.进入opt文件夹改名3. 更改启动项4. 创建硬链接5. 添加桌面启动方式6. 即可使用 0. 卸载已有ParaView YUT 1. 安装ParaView https://www.paraview.org/ 1.1 下载后安装 找到下载的文件夹&#xff0c;文件夹内…...

内存泄漏及其解决方法

1. 系统崩溃前的现象 垃圾回收时间延长&#xff1a;从原本的约10ms增长至50ms&#xff0c;Full GC时间也由0.5s增加至4-5s。Full GC频率增加&#xff1a;最短间隔可缩短至1分钟内发生一次。年老代内存持续增长&#xff1a;即使经过Full GC&#xff0c;年老代内存未见明显释放。…...

Java进阶学习笔记13——抽象类

认识抽象类&#xff1a; 当我们在做子类共性功能抽取的时候&#xff0c;有些方法在父类中并没有具体的体现&#xff0c;这个时候就需要抽象类了。在Java中&#xff0c;一个没有方法体的方法应该定义为抽象方法&#xff0c;而类中如果有抽象方法&#xff0c;该类就定义为抽象类…...

【Docker学习】深入研究命令docker exec

使用docker的过程中&#xff0c;我们会有多重情况需要访问容器。比如希望直接进入MySql容器执行命令&#xff0c;或是希望查看容器环境&#xff0c;进行某些操作或访问。这时就会用到这个命令&#xff1a;docker exec。 命令&#xff1a; docker container exec 描述&#x…...

C语言中的文件操作

前言 嗨&#xff0c;我是firdawn&#xff0c;在本章中我们将介绍&#xff0c;文件的概念&#xff0c;文件的打开和关闭&#xff0c;在篇末我们将介绍文件缓冲区的作用&#xff0c;下面是本章的思维导图&#xff0c;接下来&#xff0c;让我们开始今天的学习吧&#xff01; 一…...

python使用xlrd读取excel的时候把字符串读成了数字

xlrd 是一个 Python 库&#xff0c;用于读取 Excel 文件&#xff08;.xls 和 .xlsx&#xff0c;但 .xlsx 需要 openpyxl 或 xlrd 的较新版本&#xff09;。然而&#xff0c;xlrd 在读取 Excel 文件时通常会将单元格的内容按其原始数据类型&#xff08;如字符串、数字、日期等&a…...

【C语言】走进指针世界(下卷)

前言 在“走进指针世界&#xff08;上卷&#xff09;”中&#xff0c;我们已经说过&#xff1a;什么是指针、内存和地址&#xff0c;指针的使用、声明、初始化&#xff0c;取地址运算符、解引用运算符以及这两者关系&#xff0c;还有指针赋值。 在正式使用指针进行各种代码的…...

【Spring】SSM整合_入门代码实现

1. Maven依赖 在pom.xml中添加SSM框架的依赖 <!-- Spring Core --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.3.x</version> </dependency>…...

C++代码错误解决1(函数模板)

1、代码如下 //示例函数模板的使用 #include <iostream> #include <string> using namespace std; template <typename T>//函数模板 T max(T a,T b) {return a>b?a:b; } int main() {int a,b;cout<<"input two integers to a&b:"…...

如何用Office RibbonX Editor轻松实现Office功能区定制

如何用Office RibbonX Editor轻松实现Office功能区定制 【免费下载链接】office-ribbonx-editor An overhauled fork of the original Custom UI Editor for Microsoft Office, built with WPF 项目地址: https://gitcode.com/gh_mirrors/of/office-ribbonx-editor 你是…...

QMCDecode:3步解锁QQ音乐加密文件,让音乐真正属于你

QMCDecode&#xff1a;3步解锁QQ音乐加密文件&#xff0c;让音乐真正属于你 【免费下载链接】QMCDecode QQ音乐QMC格式转换为普通格式(qmcflac转flac&#xff0c;qmc0,qmc3转mp3, mflac,mflac0等转flac)&#xff0c;仅支持macOS&#xff0c;可自动识别到QQ音乐下载目录&#xf…...

SDMatte提示词工程指南:编写精准Prompt提升复杂图像抠图质量

SDMatte提示词工程指南&#xff1a;编写精准Prompt提升复杂图像抠图质量 1. 为什么需要关注提示词工程 在图像处理领域&#xff0c;抠图一直是个技术难题。传统方法需要手动绘制选区&#xff0c;费时费力。现在有了SDMatte这样的AI工具&#xff0c;我们可以通过简单的文字描述…...

Qwen2.5-VL-7B-Instruct保姆级教程:RTX 4090专属,5分钟搞定图文对话AI助手

Qwen2.5-VL-7B-Instruct保姆级教程&#xff1a;RTX 4090专属&#xff0c;5分钟搞定图文对话AI助手 1. 前言&#xff1a;为什么选择Qwen2.5-VL-7B-Instruct&#xff1f; 如果你正在寻找一款能在本地高效运行的多模态AI助手&#xff0c;Qwen2.5-VL-7B-Instruct绝对是RTX 4090用…...

BetterGI原神智能辅助工具:如何3分钟配置你的自动化游戏体验

BetterGI原神智能辅助工具&#xff1a;如何3分钟配置你的自动化游戏体验 【免费下载链接】better-genshin-impact &#x1f4e6;BetterGI 更好的原神 - 自动拾取 | 自动剧情 | 全自动钓鱼(AI) | 全自动七圣召唤 | 自动伐木 | 自动刷本 | 自动采集/挖矿/锄地 | 一条龙 | 全连音…...

Chord - Ink Shadow 在数据库课程设计中的应用:ER图与系统界面可视化生成

Chord - Ink & Shadow 在数据库课程设计中的应用&#xff1a;ER图与系统界面可视化生成 每次做数据库课程设计&#xff0c;你是不是也卡在了画图这一步&#xff1f;对着需求文档&#xff0c;脑子里有想法&#xff0c;但手就是画不出来。要么是ER图的关系理不顺&#xff0c…...

Python 多线程任务调度系统设计

Python多线程任务调度系统设计 在当今高并发的应用场景中&#xff0c;高效的任务调度系统至关重要。Python凭借其简洁的语法和强大的多线程支持&#xff0c;成为开发任务调度系统的理想选择。本文将探讨如何设计一个基于Python的多线程任务调度系统&#xff0c;帮助开发者优化…...

SiameseUIE开源大模型教程:中文信息抽取领域的轻量级SOTA方案

SiameseUIE开源大模型教程&#xff1a;中文信息抽取领域的轻量级SOTA方案 无需复杂配置&#xff0c;10分钟上手中文信息抽取的最强轻量方案 1. 为什么选择SiameseUIE&#xff1f; 信息抽取是自然语言处理中的核心任务&#xff0c;它能够从非结构化文本中自动识别和提取关键信息…...

Ostrakon-VL多模态模型效果展示:商品全扫描结果终端打印动态演示

Ostrakon-VL多模态模型效果展示&#xff1a;商品全扫描结果终端打印动态演示 1. 像素特工终端介绍 这是一个基于Ostrakon-VL-8B多模态大模型开发的Web交互终端&#xff0c;专门针对零售与餐饮场景进行了优化。与传统工业级UI不同&#xff0c;我们采用了高饱和度的像素艺术风格…...

Qwen3.5-4B-Claude-Opus应用场景:软件测试工程师用例设计辅助

Qwen3.5-4B-Claude-Opus应用场景&#xff1a;软件测试工程师用例设计辅助 1. 引言&#xff1a;测试工程师的痛点与AI解决方案 作为一名软件测试工程师&#xff0c;你是否经常面临这样的挑战&#xff1a; 面对复杂系统时&#xff0c;难以全面覆盖所有测试场景编写测试用例耗时…...