Submission #162580


Source Code Expand

import java.util.*;
public class Main{
    public static void main(String[] args){
	new Main().run();
    }
    Scanner sc = new Scanner(System.in);

    int r, c, sy, sx, gy, gx;
    int[][] map;
    int wall = Integer.MIN_VALUE;
    LinkedList<int[]> que;
    int[] dirX = { 0, 1, -1, 0 };
    int[] dirY = { 1, 0, 0, -1 };

    void run(){
	put();
	solve();
	System.out.println(map[gy][gx]);
    }

    void solve(){
        que = new LinkedList<int[]>();
	map[sy][sx] = 0;
	search(sy, sx);
	while(que.size()!=0){
	    int[] p = que.pollFirst();
	    search(p[0], p[1]);
	}
    }

    void search(int y, int x){
	for(int i=0; i<4; i++){
	    int a = y+dirY[i];
	    int b = x+dirX[i];
	    if(map[a][b]==-1 || map[a][b]>map[y][x]+1){
		map[a][b] = map[y][x]+1;
		int[] p = { a, b };
		que.addFirst(p);
	    }
	}
    }

    void put(){
	r = sc.nextInt();
	c = sc.nextInt();
	sy = sc.nextInt()-1;
	sx = sc.nextInt()-1;
	gy = sc.nextInt()-1;
	gx = sc.nextInt()-1;

	map = new int[r][c];

	for(int i=0; i<r; i++){
	    String s = sc.next();
	    for(int k=0; k<c; k++)
		map[i][k] = s.charAt(k)=='#' ? wall : -1;
	}
    }
}

Submission Info

Submission Time
Task C - 幅優先探索
User primrose
Language Java (OpenJDK 1.7.0)
Score 100
Code Size 1180 Byte
Status AC
Exec Time 939 ms
Memory 30904 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 699 ms 23088 KB
subtask0_sample02.txt AC 518 ms 23236 KB
subtask0_sample03.txt AC 628 ms 30896 KB
subtask1_01.txt AC 534 ms 23344 KB
subtask1_02.txt AC 529 ms 23224 KB
subtask1_03.txt AC 542 ms 23344 KB
subtask1_04.txt AC 618 ms 30900 KB
subtask1_05.txt AC 621 ms 30904 KB
subtask1_06.txt AC 602 ms 30516 KB
subtask1_07.txt AC 558 ms 23224 KB
subtask1_08.txt AC 562 ms 23216 KB
subtask1_09.txt AC 610 ms 25912 KB
subtask1_10.txt AC 630 ms 23220 KB
subtask1_11.txt AC 645 ms 30892 KB
subtask1_12.txt AC 645 ms 30900 KB
subtask1_13.txt AC 560 ms 24368 KB
subtask1_14.txt AC 527 ms 23216 KB
subtask1_15.txt AC 603 ms 28460 KB
subtask1_16.txt AC 569 ms 28208 KB
subtask1_17.txt AC 607 ms 30892 KB
subtask1_18.txt AC 604 ms 30520 KB
subtask1_19.txt AC 598 ms 24756 KB
subtask1_20.txt AC 583 ms 24628 KB
subtask1_21.txt AC 575 ms 27436 KB
subtask1_22.txt AC 939 ms 24884 KB