问题
例子
思路
类似:79. 单词搜索_面试题12. 矩阵中的路径
但是从位置[0,0]开始,实际只有向下和向右
-
方法1
$$$$
就是看能走到的范围。说是前后左右都可以移动过来,但其实,因为从0,0开始,所以只往下,往右走即可,看能走到的最多方块
-
方法2
$$$$
代码
//方法1
class Solution {
public int movingCount(int m, int n, int k) {
boolean[][] used = new boolean[m][n];
return dfs(0,0,m,n,k,used);
}
public int dfs(int i, int j, int m, int n, int k, boolean[][] used) {
//剪枝 m,n<100。
if(i>=m || j>=n || (i%10+i/10+j%10+j/10)>k || used[i][j])
return 0;
used[i][j]=true;
return 1+dfs(i+1, j, m, n, k, used)+dfs(i, j+1, m, n, k, used);
}
}
//方法2