Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- public class Main {
- public static void main(String[] args) {
- Scanner in = new Scanner(System.in);
- int n = in.nextInt();
- int m = in.nextInt();
- int[][] a = new int[n + 2][m + 2];
- for (int i = 0; i < n + 2; i++) {
- a[i][0] = -1;
- a[i][m + 1] = -1;
- }
- for (int i = 0; i < m + 2; i++) {
- a[0][i] = -1;
- a[n + 1][i] = -1;
- }
- for (int i = 1; i < n + 1; i++) {
- for (int j = 1; j < m + 1; j++) {
- a[i][j] = in.nextInt();
- }
- }
- boolean f = false;
- int k = 1;
- if (a[1][1] == 0) {
- a[1][1] = k;
- while (n * m >= k) {
- for (int i = 1; i < n + 1; i++) {
- for (int j = 1; j < m + 1; j++) {
- if (a[i][j] == k) {
- if (i == n && j == m) f = true;
- if (a[i][j - 1] == 0) a[i][j - 1] = k + 1;
- if (a[i + 1][j] == 0) a[i + 1][j] = k + 1;
- if (a[i][j + 1] == 0) a[i][j + 1] = k + 1;
- if (a[i - 1][j] == 0) a[i - 1][j] = k + 1;
- }
- }
- }
- if (f) break;
- k++;
- }
- }
- if (f) System.out.println(k - 1);
- else System.out.println(-1);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement