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

机器人的运动范围:DFS

Problem: 剑指 Offer 13. 机器人的运动范围

文章目录

  • 思路
  • 解题方法
  • 复杂度
  • Code

思路

首先定义好地图,上下左右四个方向也就是{{1,0},{0,1},{-1,0},{0,-1}},然后我们另外定义一个方法来判断题目要求的下标位数和是否大于k,

  boolean check(int x,int y,int k){int s = 0;while(x!=0){s+=x%10;x = x/10;}while(y!=0){s+=y%10;y = y/10;}return s>k;}

然后定义dfs遍历,要额外传入一个vst[][]辨别是否已经走过,防止无限循环造成栈溢出,外面定义res一开始是1因为最开始的{0,0}格子一定会占一个结果,然后每遍历一遍+1即可

解题方法

描述你的解题方法

复杂度

  • 时间复杂度:

添加时间复杂度, 示例: O ( n ) O(n) O(n)

  • 空间复杂度:

添加空间复杂度, 示例: O ( n ) O(n) O(n)

Code


class Solution {public int movingCount(int m, int n, int k) {this.m = m;this.n = n;return dfs(0,0,k,new boolean[m][n]);}int[][] dirs = {{1,0},{0,1},{-1,0},{0,-1}};int m,n;int res = 1;int dfs(int x,int y,int k,boolean[][] vst){vst[x][y] = true;for(int[] dir :dirs){int nx = x + dir[0];int ny = y + dir[1];if(nx<0 || ny<0 || nx>=m || ny >= n || check(nx,ny,k) || vst[nx][ny]){continue;}res = dfs(nx,ny,k,vst)+1;}return res;}boolean check(int x,int y,int k){int s = 0;while(x!=0){s+=x%10;x = x/10;}while(y!=0){s+=y%10;y = y/10;}return s>k;}
}

相关文章:

机器人的运动范围:DFS

Problem: 剑指 Offer 13. 机器人的运动范围 文章目录 思路解题方法复杂度Code 思路 首先定义好地图&#xff0c;上下左右四个方向也就是{{1,0},{0,1},{-1,0},{0,-1}}&#xff0c;然后我们另外定义一个方法来判断题目要求的下标位数和是否大于k&#xff0c; boolean check(int x…...

Rshiny编写ui中具有web依赖项的控件{该问题的具体阐述请看引言}

Rshiny编写ui中具有web依赖项的控件{该问题的具体阐述请看引言} 引言conditionalPanel函数update*函数系列总结引言 问题说明:在汇报的过程中我们想添加具有web依赖项的控件,比如ui中有两个控件:第一个控件标签为m,其取值为:1、2;第二个控件标签为m0,m0的取值依赖于m,即…...

1700页,卷S人的 软件测试《八股文》PDF手册,涨薪跳槽拿高薪就靠它了

大家好&#xff0c;最近有不少小伙伴在后台留言&#xff0c;又得准备面试了&#xff0c;不知道从何下手&#xff01; 不论是跳槽涨薪&#xff0c;还是学习提升&#xff01;先给自己定一个小目标&#xff0c;然后再朝着目标去努力就完事儿了&#xff01; 为了帮大家节约时间&a…...

bundle的常用命令

Bundle 是 Ruby 的一个包管理器&#xff0c;用于管理 Ruby 应用程序所需的依赖项。下面是一些常用的 Bundle 命令&#xff1a; 以下是常用的 Bundle 命令&#xff1a; 1. bundle install&#xff1a;安装所有在 Gemfile 中列出的 gem 包及其依赖项。 2. bundle update&#x…...

一、数据字典介绍

文章目录 一、数据字典介绍1、页面效果2、表设计3、数据分析4、根据页面效果分析数据接口 一、数据字典介绍 何为数据字典&#xff1f;数据字典就是管理系统常用的分类数据或者一些固定数据&#xff0c;例如&#xff1a;省市区三级联动数据、民族数据、行业数据、学历数据等&a…...

常见的SQL优化

索引优化&#xff1a;通过创建合适的索引来加快查询速度。查询优化&#xff1a;使用合适的查询语句和查询条件&#xff0c;避免全表扫描。比如&#xff1a; 避免使用SELECT *避免使用子查询避免使用OR操作符避免使用LIKE操作符使用LIMIT限制结果集大小优化查询语句的顺序 数据库…...

Sonic新生态Sonic IDE体验

背景 Sonic:免费开源的云真机测试平台&#xff0c;用心打造更好的使用体验。 之前在做APP的日常测试和UI自动化的时候,一直在使用Sonic 没有切换到平台上进行自动化测试的原因是由于现有脚本框架已经成熟,并且有很多自定义的拓展,所以Sonic的更多是一个设备管理员的角色 在Soni…...

[VRTK4.0]安装VRTKv4Tilia软件包导入程序

学习目标&#xff1a; 演示如何从Unitv资源商店安装VRTKv4Tilia包导入器,以轻松访问VRTKv4Tilia包&#xff0c;这些包为构建XR体验提供了各种有用的功能. 简述&#xff1a; 推荐使用2022.2.11F1以上版本来进行VRTK使用&#xff0c;我们可以从Unity资产商店导入Tilia包管理器&am…...

SpringBoot开发实用篇2---与数据层技术有关的替换和整合

四、数据层解决方案 1.SQL 现有数据层解决方案技术选型&#xff1a;DruidMyBatis-plusMySQL 数据源&#xff1a;DruidDataSource 持久化技术&#xff1a;MyBatis-plus/MyBatis 数据库&#xff1a;MySql 内置数据源&#xff1a; SpringBoot提供了3种内嵌的数据源对象供开发者选…...

科普ChatGPT

ChatGPT是什么? ChatGPT是一款基于人工智能技术的聊天机器人&#xff0c;可以进行自然语言的交互。它是由OpenAI公司开发的&#xff0c;其名称中的GPT是“Generative Pre-trained Transformer”的缩写&#xff0c;即基于预训练的转换器。ChatGPT使用预训练的神经网络模型来理…...

Spring MVC的核心类和注解

DispatcherServlet DispatcherServlet作用 DispatcherServlet是Spring MVC的核心类&#xff0c;也是Spring MVC的流程控制中心&#xff0c;也称为Spring MVC的前端控制器&#xff0c;它可以拦截客户端的请求。拦截客户端请求之后&#xff0c;DispatcherServlet会根据具体规则…...

Java 创建一个大文件

有时候&#xff0c;我们在对文件进行测试的时候&#xff0c;可能需要创建一个临时的大文件。 那么问题来了&#xff0c;在 Java 中如何创建大文件呢&#xff1f; 问题和解决 有些人想到的办法就是定义一个随机的字符串&#xff0c;然后重复很多次&#xff0c;然后将这个字符…...

董小姐大意了

阅读本文大概需要 1.17 分钟。 董小姐跟孟羽童的事情&#xff0c;想必大家或多或少都听说了。 事情的经过我就不多做赘述了&#xff0c;实际上并不复杂。 董小姐不是善茬&#xff0c;孟年轻做不来事&#xff0c;不能给格力带来价值&#xff0c;那可以归为双方没缘分&#xff0c…...

Java高并发核心编程—内置锁原理篇

注&#xff1a;本笔记是阅读《Java高并发核心编程卷2》整理的笔记&#xff01; 导致并发修改的原因 基本概念 synchronized 关键字 方法声明synchronized synchronized 同步块 消费者生产者问题 Java对象结构与内置锁 四种内置锁 偏向锁原理 偏向锁的撤销 偏向锁的膨胀 全局安全…...

opencv文字识别

OpenCV&#xff08;开源计算机视觉库&#xff09;是一个用于实现计算机视觉和机器学习的开源库。它包含了许多预先训练的模型和算法&#xff0c;可以帮助开发者快速实现图像处理、对象检测和识别等功能。在文字识别方面&#xff0c;OpenCV也有一些实用的工具和方法。 要在OpenC…...

bool、python集合

目录 1、使用bool判断某一数据类型是否为空 2、Python集合&#xff08;数组&#xff09; 1、列表 2、元组 3、集合 4、字典 1、使用bool判断某一数据类型是否为空 如果有某种内容&#xff0c;则几乎所有值都将评估为 True。 除空字符串外&#xff0c;任何字符串均为 Tr…...

从零开始学架构——可扩展架构模式

可扩展架构模式的基本思想和模式 软件系统与硬件和建筑系统最大的差异在于软件是可扩展的&#xff0c;一个硬件生产出来后就不会再进行改变、一个建筑完工后也不会再改变其整体结构 例如&#xff0c;一颗 CPU 生产出来后装到一台 PC 机上&#xff0c;不会再返回工厂进行加工以…...

Day03 01-MySQL数据完整性详解

文章目录 第七章 数据完整性7.1 完整性约束7.2 实体完整性7.2.1 唯一约束7.2.2 主键约束7.2.3 自增约束 7.3 域完整性7.3.1 非空约束7.3.2 默认值约束7.3.3 检查约束 7.4 引用完整性 第七章 数据完整性 7.1 完整性约束 我们已经知道了如何创建数据库、如何创建表、如何在表中…...

DJ 5-4 以太网 Ethernet

目录 一、以太网的物理拓扑结构 二、以太网物理层标准 1、以太网技术&#xff1a;10Base-T 和 100Base-T 2、以太网技术&#xff1a;1000Base 系列 3、曼彻斯特编码* 4、差分曼彻斯特编码机制* 三、以太网链路层控制技术 四、以太网的帧结构 1、前同步码 2、MAC 地址…...

华为OD机试真题 Java 实现【区块链文件转储系统】【2023Q2 200分】

一、题目描述 区块链底层存储是一个链式文件系统&#xff0c;由顺序的N个文件组成&#xff0c;每个文件的大小不一&#xff0c;依次为F1,F2…Fn。 随着时间的推移&#xff0c;所占存储会越来越大。 云平台考虑将区块链按文件转储到廉价的SATA盘&#xff0c;只有连续的区块链…...

MeloTTS实战:多语言语音合成的高效解决方案

MeloTTS实战&#xff1a;多语言语音合成的高效解决方案 【免费下载链接】MeloTTS High-quality multi-lingual text-to-speech library by MyShell.ai. Support English, Spanish, French, Chinese, Japanese and Korean. 项目地址: https://gitcode.com/GitHub_Trending/me/…...

氘可来昔替尼常见副作用为鼻咽炎头痛及腹泻,如何应对

任何口服药物的临床价值&#xff0c;都必须在疗效与安全性的天平上找到精准的平衡点。氘可来昔替尼以PASI 75应答率的全面胜出证明了自己在银屑病治疗中的卓越地位&#xff0c;而其不良反应谱同样经过了严苛的临床验证。鼻咽炎、头痛和腹泻构成了这款药物最需关注的三大安全信号…...

【DeepSeek集成测试黄金标准】:20年专家亲授5大避坑指南与自动化落地框架

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;DeepSeek集成测试黄金标准的演进与核心价值 集成测试在大语言模型工程化落地过程中已从“验证功能可用”跃迁为“保障推理一致性、上下文鲁棒性与安全边界的三位一体质量门禁”。DeepSeek系列模型&…...

DAIR-V2X-V数据集深度评测:与KITTI、nuScenes比,它到底强在哪?

DAIR-V2X-V数据集深度评测&#xff1a;与KITTI、nuScenes比&#xff0c;它到底强在哪&#xff1f; 当技术团队着手开发面向中国道路的自动驾驶系统时&#xff0c;数据集的选择往往成为第一个关键决策点。过去十年间&#xff0c;KITTI和nuScenes等国际数据集一直是行业标杆&…...

嵌入式Linux驱动开发 —— 从DTS到代码的桥梁与简单OF系列API(3)

接前一篇文章&#xff1a;嵌入式Linux驱动开发 —— 从DTS到代码的桥梁与简单OF系列API&#xff08;2&#xff09; 节点查找 API&#xff1a;如何在设备树中定位目标节点 有了数据结构基础&#xff0c;现在我们可以开始讲具体的API了。第一步是找到你要操作的节点。就像你想操…...

从API调用成功率看Taotoken服务的稳定性与容灾表现

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 从API调用成功率看Taotoken服务的稳定性与容灾表现 在将大模型能力集成到自动化流程或日常开发工具链时&#xff0c;服务的稳定性和…...

终极虚拟显示器解决方案:ParsecVDisplay完整使用指南

终极虚拟显示器解决方案&#xff1a;ParsecVDisplay完整使用指南 【免费下载链接】parsec-vdd ✨ Perfect virtual display for game streaming 项目地址: https://gitcode.com/gh_mirrors/pa/parsec-vdd ParsecVDisplay是一个基于Parsec虚拟显示驱动(VDD)的独立应用程序…...

AI算法工程师必学的Python库:这10个库,AI开发必备

对于软件测试从业者来说&#xff0c;随着人工智能技术在测试领域的渗透越来越深——从自动化测试用例生成到缺陷智能预测&#xff0c;从测试结果分析到测试环境智能化调度&#xff0c;掌握AI开发的核心工具链已经成为从功能测试向AI测试开发、智能化测试转型的核心竞争力。Pyth…...

当卫星在天上“读懂”人间:ICLR 2025 论文深度解读师玉娇、昃向辉的CS2S

把一张卫星图变成一张街景照片&#xff0c;就像把一个俯视棋盘拼成一面看台——不仅要摆对每一枚棋子&#xff0c;还要看懂整场比赛想象这样一个场景&#xff1a;你在城市规划部门工作&#xff0c;需要快速生成某条街道在不同季节、不同天气条件下的真实渲染效果&#xff0c;以…...

Windows多显示器DPI缩放终极解决方案:告别模糊显示,享受清晰视觉体验

Windows多显示器DPI缩放终极解决方案&#xff1a;告别模糊显示&#xff0c;享受清晰视觉体验 【免费下载链接】SetDPI 项目地址: https://gitcode.com/gh_mirrors/se/SetDPI 你是不是曾经遇到过这样的困扰&#xff1f;连接多个显示器时&#xff0c;文字和图标大小不一&…...