面試題13 機械人的運動範圍

2021-10-02 11:06:41 字數 707 閱讀 5853

地上有乙個m行n列的方格。乙個機械人從座標(0,0)的格仔開始移動,它每次可以向左、右、上、下移動一格,但不能進入行座標和列座標的數字之和大於k的格仔。例如,當k為18時,機械人能夠進入方格(35,37),因為3+5+3+7=18。但它不能進入方格(35,38),因為3+5+3+8=19,請問該機械人能夠到達多少個格仔?

和前一題有些類似,將m×n的方格看成乙個m×n的矩陣。除了邊界之外,其他格仔都有4個方向可以探測。

package com.wsy;

public class main

public static int getcount(int rows, int cols, int k)

boolean visit = new boolean[rows][cols];

return getcountcore(rows, cols, 0, 0, k, visit);

}public static int getcountcore(int rows, int cols, int row, int col, int k, boolean visit)

return count;

}public static boolean check(int row, int col, int k)

while (col != 0)

return sum <= k;

}}

面試題13 機械人的運動範圍

題目 機械人的運動範圍 題 地上有乙個m行和n列的方格。乙個機械人從座標0,0的格仔開始移動,每一次只能向左,右,上,下四個方向移動一格,但是不能進入行座標和列座標的數字之和大於k的格仔。例如,當k為18時,機械人能夠進入方格 35,37 因為3 5 3 7 18。但是,它不能進入方格 35,38 ...

面試題13 機械人的運動範圍

地上有乙個m行和n列的方格。乙個機械人從座標 0,0 的格仔開始移動,每一次只能向左,右,上,下四個方向移動一格,但是不能進入行座標和列座標的數字之和大於k的格仔。例如,當k為18時,機械人能夠進入方格 35,37 因為3 5 3 7 18。但是,它不能進入方格 35,38 因為3 5 3 8 19...

面試題13 機械人的運動範圍

地上有乙個m行n列的方格,從座標 0,0 到座標 m 1,n 1 乙個機械人從座標 0,0 的格仔開始移動,它每次可以向左 右 上 下移動一格 不能移動到方格外 也不能進入行座標和列座標的數字之和大於k的格仔。例如,當k為18時,機械人能夠進入方格 35,37 因為3 5 3 7 18。但它不能進入...