码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2020-03-03 22:26:55      阅读:69      评论:0      收藏:0      [点我收藏+]

标签:stat   char   剑指offer   ==   ntc   hold   sum   boolean   机器   

public class Solution {
    public int movingCount(int threshold, int rows, int cols)
    {
        boolean[][] flag=new boolean[rows][cols];
        return moveCountCore(threshold,rows,cols,0,0,flag);
    }
    private int moveCountCore(int threshold,int rows,int cols,int i,int j,boolean[][]flag){
        //不满足条件时 返回0
        if(i<0||j<0||i>=rows||j>=cols||flag[i][j]==true||count(i)+count(j) > threshold){
            return 0;
        }
        flag[i][j] = true;
        //满足条件时 计算其余四个方格的情况并?1
        return 1 + moveCountCore(threshold,rows,cols,i+1,j,flag) +
                moveCountCore(threshold,rows,cols,i-1,j,flag) +
                moveCountCore(threshold,rows,cols,i,j+1,flag) +
                moveCountCore(threshold,rows,cols,i,j-1,flag);
    }
    /*
 计算一个数字的各个位的数字之和
 */
    private int count(int num){
        String str = String.valueOf(num);
        int sum=0;
        for(int i =0;i<str.length();i++){
            sum += str.charAt(i) - ‘0‘;
        }
        return sum;
    }
    public static void main(String[] args) {
    }
}

 

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

标签:stat   char   剑指offer   ==   ntc   hold   sum   boolean   机器   

原文地址:https://www.cnblogs.com/nlw-blog/p/12404833.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!