剑指offer--13机器人运动范围

Posted Anrys

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剑指offer--13机器人运动范围相关的知识,希望对你有一定的参考价值。

剑指offer--13机器人运动范围

题目

在这里插入图片描述

代码

class Solution {
    public int movingCount(int m, int n, int k) {
        int[][] visited = new int[m][n];
        dfs(visited,0,0,k,m,n); //先走完然后计算有多少个1
        int range=0;
        for (int i=0;i<visited.length;i++){
            for(int j=0;j<visited[0].length;j++){
                if (visited[i][j]==1) range++;
            }
        }return range;
    }
    public void dfs(int[][] visited,int i, int j,int k,int m, int n){
       if (i>=m||i<0||j>=n||j<0||(i/10+i%10+j/10+j%10)>k||visited[i][j]==1) return;
       visited[i][j]=1; //i行,j列应该存储的数据位置是 
       dfs(visited,i,j-1,k,m,n);
       dfs(visited,i,j+1,k,m,n);
       dfs(visited,i-1,j,k,m,n);
       dfs(visited,i+1,j,k,m,n);
    }
}

结果

在这里插入图片描述

以上是关于剑指offer--13机器人运动范围的主要内容,如果未能解决你的问题,请参考以下文章

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

剑指 Offer(C++版本)系列:剑指 Offer 13 机器人的运动范围

剑指 Offer(C++版本)系列:剑指 Offer 13 机器人的运动范围

剑指 Offer(C++版本)系列:剑指 Offer 13 机器人的运动范围

剑指 Offer(C++版本)系列:剑指 Offer 13 机器人的运动范围

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