Submission #731764


Source Code Expand

import java.util.ArrayDeque;
import java.util.Arrays;
import java.util.Scanner;

public class Main {
	private static int[][] DIR = {{-1, 0}, {1, 0}, {0, -1}, {0, 1}};

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int R = sc.nextInt();
		int C = sc.nextInt();
		
		int sy = sc.nextInt() - 1;
		int sx = sc.nextInt() - 1;
		int gy = sc.nextInt() - 1;
		int gx = sc.nextInt() - 1;

		char[][] map = new char[R][C];
		for (int i = 0; i < R; i ++) {
			map[i] = sc.next().toCharArray();
		}
		
		ArrayDeque<int[]> queue = new ArrayDeque<>();
		long[][] dist = new long[R][C];
		for (long[] d : dist) Arrays.fill(d, Integer.MAX_VALUE);
		
		queue.add(new int[]{sy, sx, 0});
		dist[sy][sx] = 0;

		while (queue.size() > 0) {
			int[] pos = queue.pollLast();
			
			for (int[] d : DIR) {
				int[] n = new int[]{pos[0] + d[0], pos[1] + d[1], pos[2] + 1};
				
				if (map[n[0]][n[1]] != '#' && dist[n[0]][n[1]] > pos[2] + 1) {
					dist[n[0]][n[1]] = pos[2] + 1;
					queue.add(n);
				}
			}
		}
		
		System.out.println(dist[gy][gx]);
	}
}

Submission Info

Submission Time
Task C - 幅優先探索
User hiromi_ayase
Language Java (OpenJDK 1.7.0)
Score 100
Code Size 1118 Byte
Status AC
Exec Time 482 ms
Memory 31544 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 3
AC × 25
Set Name Test Cases
Sample subtask0_sample01.txt, subtask0_sample02.txt, subtask0_sample03.txt
All subtask0_sample01.txt, subtask0_sample02.txt, subtask0_sample03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt
Case Name Status Exec Time Memory
subtask0_sample01.txt AC 467 ms 23396 KB
subtask0_sample02.txt AC 355 ms 23364 KB
subtask0_sample03.txt AC 482 ms 31472 KB
subtask1_01.txt AC 371 ms 23576 KB
subtask1_02.txt AC 367 ms 23480 KB
subtask1_03.txt AC 373 ms 23516 KB
subtask1_04.txt AC 473 ms 31488 KB
subtask1_05.txt AC 477 ms 31544 KB
subtask1_06.txt AC 411 ms 30888 KB
subtask1_07.txt AC 354 ms 23256 KB
subtask1_08.txt AC 364 ms 23368 KB
subtask1_09.txt AC 394 ms 26588 KB
subtask1_10.txt AC 366 ms 23508 KB
subtask1_11.txt AC 466 ms 31404 KB
subtask1_12.txt AC 433 ms 31372 KB
subtask1_13.txt AC 409 ms 27120 KB
subtask1_14.txt AC 373 ms 23424 KB
subtask1_15.txt AC 404 ms 27920 KB
subtask1_16.txt AC 415 ms 31020 KB
subtask1_17.txt AC 430 ms 31304 KB
subtask1_18.txt AC 414 ms 30784 KB
subtask1_19.txt AC 392 ms 25404 KB
subtask1_20.txt AC 415 ms 25664 KB
subtask1_21.txt AC 430 ms 28572 KB
subtask1_22.txt AC 438 ms 24600 KB