地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格 [35, 37] ,因为3+5+3+7=18。但它不能进入方格 [35, 38],因为3+5+3+8=19。请问该机器人能够到达多少个格子?示例 1:输入:m = 2, n = 3, k = 1
输出:3
示例 2:输入:m = 3, n = 1, k = 0
输出:1
提示:1 <= n,m <= 100
0 <= k <= 20链接:https://leetcode-cn.com/problems/ji-qi-ren-de-yun-dong-fan-wei-lcofclass Solution:def movingCount(self, m: int, n: int, k: int) -> int:# visited = [[1] * n for _ in range(m)]# for i in range(m):#     for j in range(n):#         if i // 10 + i % 10 + j // 10 + j % 10 <= k:#             visited[i][j] = 0# def dfs(x, y):#     if x < 0 or x >= m or y < 0 or y >= n or visited[x][y]:#         return 0#     visited[x][y] = 1#     return 1 + dfs(x, y+1) + dfs(x+1, y)# return dfs(0, 0)visited = [[1] * n for _ in range(m)]for i in range(m):for j in range(n):if i // 10 + i % 10 + j // 10 + j % 10 <= k:visited[i][j] = 0queue = collections.deque([(0,0)])res = 0while queue:x, y = queue.popleft()res += 1for dx, dy in ((1,0),(0,1)):nx, ny = x + dx, y + dyif 0 <= nx <m and 0 <= ny < n and not visited[nx][ny]:visited[nx][ny] = 1queue.append((nx, ny))return res

Leetcode 剑指 Offer 13. 机器人的运动范围 (每日一题 20210906)相关推荐

  1. LeetCode 剑指Offer 13 机器人的运动范围

    LeetCode 剑指Offer 13 机器人的运动范围 题目 解题 解题一:深度优先搜索 解题二:广度优先搜索 解题三:动态规划 题目 解题 深度优先和广度优先解题思路参考: 剑指 Offer 13 ...

  2. 每日一道Leetcode - 剑指 Offer 13. 机器人的运动范围【DFS|BFS】

    DFS: Python版本 class Solution:def movingCount(self, m: int, n: int, k: int) -> int:def dfs(i,j,si, ...

  3. 【LeetCode】剑指 Offer 13. 机器人的运动范围

    [LeetCode]剑指 Offer 13. 机器人的运动范围 文章目录 [LeetCode]剑指 Offer 13. 机器人的运动范围 package offer;public class Solu ...

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

    剑指 Offer 13. 机器人的运动范围 题目 ​ 地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] .一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左.右.上 ...

  5. [[EVD]] - 剑指 Offer 13. 机器人的运动范围

    题目分析:[[EVD]] - 剑指 Offer 13. 机器人的运动范围https://leetcode-cn.com/problems/ji-qi-ren-de-yun-dong-fan-wei-l ...

  6. 【四重优化,速看】剑指 Offer 13. 机器人的运动范围

    立志用最少的代码做最高效的表达 题目 地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] .一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左.右.上.下移动一格(不 ...

  7. Leetcode刷题笔记——剑指 Offer 13. 机器人的运动范围(中等)

    文章目录 题目描述 解题思路 方法一:深度优先遍历DFS 复杂度分析 C++代码实现 方法二:广度优先遍历BFS 复杂度分析 C++代码实现 参考连接 题目描述 地上有一个m行n列的方格,从坐标 [0 ...

  8. 剑指 Offer 13. 机器人的运动范围 【重刷】

    文章目录 1.概述 2. 代码 1.概述 题目:https://leetcode-cn.com/problems/ji-qi-ren-de-yun-dong-fan-wei-lcof/ 地上有一个m行 ...

  9. 35. (★DFS)剑指 Offer 13. 机器人的运动范围

    题目描述: 地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] .一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左.右.上.下移动一格(不能移动到方格外),也不能进 ...

最新文章

  1. 机器学习中,梯度下降算法的问题引入
  2. opencv学习(十六)之颜色空间转换cvtColor()
  3. usaco Snail Trails
  4. 【算法竞赛学习】气象海洋预测-Task2 数据分析
  5. SLF4JLoggerContext cannot be cast to LoggerContext
  6. 数据库每日一题 2020.05.09
  7. Linux:VMware Tools安装方法及共享文件夹设置方法
  8. *第二周*数据结构实践项目二【多文件系统】
  9. 2009年上半年软考所有试题和答案公布 专家解析中
  10. WeCode在线少儿编程|为什么我们选择代码编程
  11. 程序员入门:如何自学编程
  12. Spring常用注解。
  13. 腾讯云服务器的功能与优势体现在哪里?为新手选择服务器提供参考
  14. UE4 更改工程文件名字的方法
  15. Jmeter性能测试报告导出
  16. 关于汽车悬挂系统减震控制的进一步研究(自动控制原理课程设计小论文)
  17. Kivy转apk——使用打包虚拟机(亲测~)
  18. PE文件之IMAGE_DOS_HEADER
  19. 三国群英传霸业之王服务器维护,20200825维护公告
  20. ZigBee智能仓库监控系统

热门文章

  1. scrapy proxy and user_agent
  2. Open-E DSS V7 应用系列之三 Web管理简介
  3. 关于 xml 库运行时的segmentation fault 问题
  4. 利用 MongoDB 和 Solr 实现全文搜索
  5. Asp.NET获取文件及其路径
  6. java中 set,list,array(集合与数组)相互转换
  7. (牛人莫入)Silverlight 独立文件存储
  8. OCH\OMS\OTS\MSP\RS\SPI解释
  9. 如何解决Connect超时导致的阻塞问题
  10. 《算法竞赛进阶指南》打卡-基本算法-AcWing 102. 最佳牛围栏:浮点数二分、前缀和、双指针