Code 1
Code 1
*;
public static int minMoves(int[][] grid, int[] source, int[] destination, int[]
moveRule) {
int M = grid.length, N = grid[0].length;
boolean[][] visited = new boolean[M][N];
Queue<int[]> queue = new LinkedList<>();
queue.add(new int[]{source[0], source[1], 0});
visited[source[0]][source[1]] = true;
while (!queue.isEmpty()) {
int[] current = queue.poll();
int x = current[0], y = current[1], steps = current[2];