题解 | #矩阵中的路径#

机器人的运动范围

http://www.nowcoder.com/practice/6e5207314b5241fb83f2329e89fdecc8

题目理解清楚:机器人从(0,0)出发,问可以走到多少格子,不是求一条路径的最大值而是所以可以走的路径中不重复的格子数

public class Solution {
    
    public int ans = 0;
    public int threshold = 0;
    public int rows = 0,cols = 0;
    public int[][] visit = new int[101][101];
    
    public void dfs(int i,int j,int count){
        if(i<0||j<0||i>=rows||j>=cols||visit[i][j] == 1)return;
        
        int temp = 0;
        String s = String.valueOf(i)+String.valueOf(j);
        for(int k = 0; k < s.length(); k++)temp+=s.charAt(k)-'0';
        if(temp >threshold)return;
        ans++;
         
        visit[i][j] = 1;
        dfs(i+1,j,count+1);
        dfs(i,j+1,count+1);
        dfs(i-1,j,count+1);
        dfs(i,j-1,count+1);
    } 
    public int movingCount(int threshold, int rows, int cols) {
        this.threshold = threshold;
        this.rows = rows;
        this.cols = cols;
        dfs(0,0,1);
        return ans;
    }
}
全部评论

相关推荐

2025-12-14 11:43
黑龙江大学 Java
用微笑面对困难:确实比较烂,可以这么修改:加上大学的qs排名,然后大学简介要写一些,然后硕士大学加大加粗,科研经历第一句话都写上在复旦大学时,主要负责xxxx,简历左上角把学校logo写上,建议用复旦大学的简历模板
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务