剑指offer--13机器人运动范围
Posted Anrys
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剑指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(C++版本)系列:剑指 Offer 13 机器人的运动范围
剑指 Offer(C++版本)系列:剑指 Offer 13 机器人的运动范围
剑指 Offer(C++版本)系列:剑指 Offer 13 机器人的运动范围