当前位置: 代码迷 >> 综合 >> 地下
  详细解决方案

地下

热度:92   发布时间:2024-01-28 15:31:13.0
import java.util.Scanner;
//地下迷宫
public class Main_112 {public static String path = "";public static void main(String[] args) {Scanner in = new Scanner(System.in);int n = in.nextInt();int m = in.nextInt();int p = in.nextInt();int[][] maze = new int[n][m];boolean[][] realpath = new boolean[n][m];for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {maze[i][j] = in.nextInt();}}Solution(maze,realpath,0,0,"",p);System.out.println(path);}public static void Solution(int[][] maze,boolean[][] realpath,int i,int j,String trypath,int p){if(i==0&&j==maze[0].length-1&&maze[i][j]==1){if(p>=0){path = trypath + "["+i+","+j+"]";}else {path="Can not escape!";}return;}if(i>=0&&j>=0&&i < maze.length && j < maze[0].length && maze[i][j] == 1 && !realpath[i][j]){realpath[i][j] = true;trypath += "["+i+","+j+"],";Solution(maze,realpath,i,j+1,trypath,p-1);Solution(maze,realpath,i+1,j,trypath,p);Solution(maze,realpath,i,j-1,trypath,p-1);Solution(maze,realpath,i-1,j,trypath,p-3);}}
}

 

  相关解决方案