美文网首页
机器人的运动范围

机器人的运动范围

作者: 神游物外的轮子 | 来源:发表于2019-08-11 16:52 被阅读0次

记忆点

  • 递归
  • (0, 0)开始

思路

用递归。
目标是从(0, 0)开始,找到所有的可以访问的点,所以理论上矩阵上的每个点最多访问一次。

实现

class Solution {
public:
    int getSum (int x, int y) {
        int s = 0;
        while (x) {
            s += x % 10;
            x /= 10;
        }
        while (y) {
            s += y % 10;
            y /= 10;
        }
        return s;
    }

    int step(int x, int y, int threshold, vector<vector<bool>>& visited) {
        if (x < 0 || x >= visited.size() || y < 0 || y >= visited[x].size()) return 0;
        if (visited[x][y] || getSum(x, y) > threshold) return 0;

        int cnt = 1;
        visited[x][y] = true;
        cnt += step(x+1, y, threshold, visited);
        cnt += step(x-1, y, threshold, visited);
        cnt += step(x, y+1, threshold, visited);
        cnt += step(x, y-1, threshold, visited);
        return cnt;
    }

    int movingCount(int threshold, int rows, int cols) {
        if (threshold < 0 || rows <= 0 || cols <= 0) return 0;

        int cnt = 0;
        vector<vector<bool>> visited(rows, vector<bool>(cols, false));
        cnt += step(0, 0, threshold, visited);
        return cnt;
    }
};

相关文章

  • 机器人运动范围

    题目描述 地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动...

  • 机器人的运动范围

    地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是...

  • 机器人的运动范围

    地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是...

  • 机器人的运动范围

    题目描述 地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动...

  • 机器人的运动范围

    题目描述 地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动...

  • 机器人的运动范围

    地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是...

  • 机器人的运动范围

    《剑指offer》面试题13:矩阵中的路径 题目:地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动...

  • 机器人的运动范围

    记忆点 递归 从开始 思路 用递归。目标是从开始,找到所有的可以访问的点,所以理论上矩阵上的每个点最多访问一次。 实现

  • 机器人的运动范围

    题目描述 地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动...

  • 机器人的运动范围

    题目描述:地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动...

网友评论

      本文标题:机器人的运动范围

      本文链接:https://www.haomeiwen.com/subject/wcssjctx.html