zoukankan      html  css  js  c++  java
  • JZ66 机器人的运动范围

    描述

    地上有一个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 <= rows, cols<= 100
    0 <= threshold <= 20

    示例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]等等是无法到达的


    ====================================================================================================================================================


    解题思路:
      本题的解题思路和上一道回溯问题解题思路一致,大同小异。首先要明白机器人是有四个移动方向的,所以next数组一定要设立好。并且已经判断过的节点不需要再做判断了。然后在回溯问题的递归中,注意结束条件是机器人的移动不能
    离开矩阵的边界。并且是没有被判断过的,而且当前rows和cols每位数的和加起来不能超过threshold,然后让机器人再来回移动。其实仔细想想这道题用一个二重循环就能a出来,不过就不是它的标签回溯了。
  • 相关阅读:
    编写属于自己的Linux Service命令
    Cloudera Manager和CDH4.1的安装
    html5基础教程收集整理精华
    Javascript跳转页面和打开新窗口等方法
    VK值列表
    标准C++之fstream
    PeekMessage用法
    Web系统常用测试方法
    VC控件的一些原理
    Visual C++ 文件操作
  • 原文地址:https://www.cnblogs.com/hddandelion/p/15172607.html
Copyright © 2011-2022 走看看