机器人的运动范围

【原题】 地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+5+3+8 = 19。请问该机器人能够达到多少个格子? 【思路】 主要在于递归的一个过程,并判断符合条件的case,其它的并没有什么好说的,关键是要理解这个过程。另需特别注意:每次为了不重复计算一个单元格,需要开辟一个visited数组来保存哪些元素已经给你访问过,哪些元素还未被访问。

public class Solution {
    public int getSum(int num){
        int count=0;
        while(num!=0){
            count+=num%10;
            num/=10;
        }
        //System.out.println(count);
        return count;
    }
    public int movingCount(int threshold, int rows, int cols)
    {
       boolean[][] visited=new boolean[rows][cols];
        return movingCountCore(threshold,rows,cols,0,0,visited);
    }
    public int movingCountCore(int threshold, int rows, int cols,int row,int col,boolean[][] visited){
        int count=0;   
        System.out.println(row+" "+col);
        if(row>=0&&col>=0&&row<rows&&col<cols&&(getSum(row)+getSum(col))<=threshold&&!visited[row][col])
                {
                visited[row][col]=true;
                    count=1+movingCountCore(threshold,rows,cols,row-1,col,visited)+
                            movingCountCore(threshold,rows,cols,row,col-1,visited)+
                            movingCountCore(threshold,rows,cols,row+1,col,visited)+
                            movingCountCore(threshold,rows,cols,row,col+1,visited);
                }
            return count;
    }
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏量子位

腾讯AI让二子,柯洁还是输了

问耕 发自 凹非寺 这是围棋人机大战中的又一个第一次。 顶级职业围棋手,在让子棋中负于AI。 ? 更明确一点说,腾讯围棋AI绝艺,让二子战胜了当今围棋第一人柯...

2178
来自专栏量子位

2:0!柯洁次战中盘告负AlphaGo,表现一度完美

唐旭 若朴 发自 东瑶村 量子位 报道 | 公众号 QbitAI 鏖战155手,柯洁二战AlphaGo再次落败。中盘告负。 这场比赛的激烈和复杂程度,超越双方的...

31511
来自专栏Timhbw博客

有感于AlphaGo与韩国围棋选手李世石的“世纪人机大战”

先介绍下他(它)们: 李世石(朝鲜语:,朝鲜汉字:李世乭),1983年3月2日生于韩国 全罗南道,2006年3月12日与女友金贤珍完婚,同年9月3号女儿李慧琳出...

2665
来自专栏WOLFRAM

黑白世界 — 围棋

1544
来自专栏企鹅号快讯

解密!德扑界的AlphaGo:击败顶级德扑玩家的AI赌神Libratus

“AlphaGo退休了,我们还有赌神Libratus。” 今年上半年,AlphaGo多次升级连克人类高手,甚至以3:0一举击败如今世界排名第一的柯洁。而在德州扑...

20310
来自专栏机器之心

业界 | DeepMind发布AlphaGo 50局自我对弈棋谱

选自DeepMind 机器之心编译 参与:机器之心编辑部 5 月 27 日,升级后的 AlphaGo 所向披靡,最终以 3:0 赢下了乌镇围棋人机大战。在此期...

3737
来自专栏钱塘大数据

【钱塘号】2017年将是人工智能真正超越人脑的元年

1月4日下午1点多,一场关注度空前的围棋比赛在野狐网上展开,64岁的聂卫平对阵Master,“棋圣”最终以7目半的较大劣势落败。聂老是近一周内,又一位被Mast...

3417
来自专栏量子位

首个围棋10段诞生!是10连胜柯洁的国产阿法狗(腾讯绝艺)

特别鸣谢量子位群友“::::::::::::::::::::::::::::::::” 量子位·QbitAI | 舒石 李林 发自 凹非寺 ? 昨晚22:32。...

4468
来自专栏九彩拼盘的叨叨叨

桌游收藏

402
来自专栏AI科技大本营的专栏

AlphaGo模仿柯洁开局,激战3小时人类再度败北

根据比赛最新消息,5月25日,柯洁对阵AlphaGo第二局,双方激战3个小时,执白子的柯洁再度输给AlphaGo ,第二次人机大战胜负已定。 中国乌镇围棋峰会...

2456

扫码关注云+社区