首页 > 试题广场 >

机器人的运动范围

[编程题]机器人的运动范围
  • 热度指数:460067 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 64M,其他语言128M
  • 算法知识视频讲解
地上有一个 rows 行和 cols 列的方格。坐标从 [0,0] 到 [rows-1,cols-1] 。一个机器人从坐标 [0,0] 的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于 threshold 的格子。 例如,当 threshold 为 18 时,机器人能够进入方格   [35,37] ,因为 3+5+3+7 = 18。但是,它不能进入方格 [35,38] ,因为 3+5+3+8 = 19 。请问该机器人能够达到多少个格子?

数据范围:

进阶:空间复杂度 ,时间复杂度
示例1

输入

1,2,3

输出

3
示例2

输入

0,1,3

输出

1
示例3

输入

10,1,100

输出

29

说明

[0,0],[0,1],[0,2],[0,3],[0,4],[0,5],[0,6],[0,7],[0,8],[0,9],[0,10],[0,11],[0,12],[0,13],[0,14],[0,15],[0,16],[0,17],[0,18],[0,19],[0,20],[0,21],[0,22],[0,23],[0,24],[0,25],[0,26],[0,27],[0,28] 这29种,后面的[0,29],[0,30]以及[0,31]等等是无法到达的      
示例4

输入

5,10,10

输出

21
头像 Ironxin
发表于 2020-05-20 12:40:11
精华题解 题目描述地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+5 展开全文
头像 牛客题解官
发表于 2020-06-02 11:05:37
精华题解 题目的主要信息: 有一个坐标从 [0,0] 到 [rows-1,cols-1] 的方格 机器人每次只能走上下左右四个方向,但是行坐标和列坐标的数位之和大于 threshold 的格子不能进入 求从起点[0, 0]开始最多经过可以多少个格子 举一反三: 学习完本题的思路你可以解决如下题目: JZ1 展开全文
头像 数据结构和算法
发表于 2021-07-03 21:41:57
精华题解 DFS(深度优先搜索) 这道题说的是一个机器人从左上角开始,他可以沿着上下左右四个方向走,并且走到的每个格子坐标的数字和不大于k,问可以走多少个格子。我们先来画个图看一下这里统计的是能走多少个格子,所以统计肯定是不能有重复的,题中说了,机器人是可以沿着上下左右四个方向走的。但你想一下,任何一个格子你 展开全文
头像 Maokt
发表于 2021-07-01 10:57:28
精华题解 算法思想一:深度优先遍历DFS 解题思路: 深度优先搜索: 可以理解为暴力法模拟机器人在矩阵中的所有路径。DFS 通过递归,先朝一个方向搜到底,再回溯至上个节点,沿另一个方向搜索,以此类推。 剪枝: 在搜索中,遇到数位和超出目标值、此元素已访问,则应立即返回,称之为 可行性剪枝  展开全文
头像 Peterliang
发表于 2021-07-14 18:49:51
精华题解 题意分析 给我们一张二维的地图,初始的位置在(0,0),可以往上下左右四个方向进行移动。但是移动需要需要满足如下条件: 不能超过地图的边界 移动的位置的坐标的数位的数字的和不能超过给定的数字 思路分析 这个题目我主要用的是BFS和DFS这两个算法进行求解。可以结合这个图进行理解。 展开全文
头像 NumPy
发表于 2021-07-14 00:20:20
精华题解 一、题目描述 JZ66机器人的运动范围题目大意:上有一个rows行和cols列的方格。坐标从 [0,0] 到 [rows-1,cols-1]。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于threshold的格子。 例如,当 展开全文
头像 leaves0924
发表于 2021-07-03 18:07:53
精华题解 题目描述 地上有一个rows行和cols列的方格。坐标从 [0,0] 到 [rows-1,cols-1]。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于threshold的格子。 例如,当threshold为18时,机器人能 展开全文
头像 牛一霸
发表于 2021-07-04 11:16:57
精华题解 题目:机器人的运动范围 描述:地上有一个rows行和cols列的方格。坐标从[0,0]到[rows-1,cols-1]。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于threshold的格子。 例如,当threshol 展开全文
头像 一叶浮尘
发表于 2020-03-21 22:41:45
> 地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+ 展开全文
头像 郭家兴0624
发表于 2019-08-12 21:48:38
题目描述地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+5 展开全文
头像 中工升达预备毕业生
发表于 2019-09-01 09:12:26
一开始读错题意,造数据很小5行4列,然后想当然的认为讨论可解,推出数学公式就ok,结果只过了小范围的数据(m,n<10的数据),凉了两个小时才幡然醒悟---读错题了。 // m行n列 public static int movingCount(int threshold, int rows, 展开全文
头像 橙子爱吃桃子
发表于 2020-04-25 22:59:17
C++/代码:版本一: class Solution { public: int row, col, res;//定义全局变量,res为输出变量 int movingCount(int threshold, int rows, int cols) { vector&l 展开全文
头像 Oh~Sunny
发表于 2020-02-12 14:25:47
此题与<<矩阵中的路径>>那一题为同一类问题,方法是采用回溯法来解决,我同样参照剑指offer官方的解释进行了代码实现,思路可以看我<<矩阵中的路径>>的那一题,他们是很相似的哦!!!如果您看到我的代码有什么问题或者需要改进的请您指正哦!!!!! cl 展开全文
头像 Ar1es
发表于 2019-12-09 16:57:45
广搜版本 import java.util.*; public class Solution {          private final int&n 展开全文
头像 卢逸飞6628001
发表于 2022-03-06 15:39:28
''' 1.创建rows行cols列的全零矩阵 2.符合threshold条件的矩阵点变成1 3.原点变成2,把与2相邻的点变成2(搜索时2只会向上、向右传播) 4.输出2的个数 ''' class Solution: def movingCount(self , threshold: in 展开全文
头像 LaN666
发表于 2021-02-03 20:30:18
使用递归,判断所有的点机器人是否可达即可 public class Solution { public int movingCount(int threshold, int rows, int cols) { int[][] flag = new int[rows][ 展开全文
头像 牛客228195230号
发表于 2020-07-02 08:47:02
题目描述地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+5 展开全文
头像 Fujie5
发表于 2020-07-08 21:33:54
题目描述 地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+ 展开全文