Submission #691657
Source Code Expand
using System;
using System.Collections.Generic;
class c{
public static void Main(){
string[] input = Console.ReadLine().Split(' ');
int r = int.Parse(input[0]);
int c = int.Parse(input[1]);
input = Console.ReadLine().Split(' ');
int s_y = int.Parse(input[0])-1;
int s_x = int.Parse(input[1])-1;
input = Console.ReadLine().Split(' ');
int g_y = int.Parse(input[0])-1;
int g_x = int.Parse(input[1])-1;
char[,] maze = new char[r,c];
Queue<point> q = new Queue<point>();
int[,] ans = new int[r,c];
for(int i = 0;i<r;i++){
string tmp = Console.ReadLine();
for(int j = 0;j<c;j++){
maze[i,j] = tmp[j];
if(maze[i,j] == '#')
ans[i,j] = -1;
}
}
int[] dx = {0,-1,0,1};
int[] dy = {-1,0,1,0};
q.Enqueue(new point(s_x,s_y));
while(q.Count > 0){
point tmp = q.Dequeue();
int x = tmp.x;
int y = tmp.y;
if(x == g_x&&y == g_y)
break;
for(int i = 0;i<4;i++){
int tmp_x = x+dx[i];
int tmp_y = y+dy[i];
if(ans[tmp_y,tmp_x] != -1&&ans[tmp_y,tmp_x] <= 0){
q.Enqueue(new point(tmp_x,tmp_y));
ans[tmp_y,tmp_x] = ans[y,x] + 1;
}
}
}
//q.Enqueue(new point(1,1));
//point a = q.Dequeue();
//Console.WriteLine("x:{0} y:{1}",a.x,a.y);
/*
for(int i = 0;i<r;i++){
for(int j = 0;j<c;j++){
Console.Write("{0} ",ans[i,j]);
}
Console.WriteLine();
}
*/
Console.WriteLine(ans[g_y,g_x]);
}
}
class point{
public int x;
public int y;
public point(int a,int b){
x = a;
y = b;
}
}
Submission Info
Submission Time |
|
Task |
A - 幅優先探索 |
User |
rain528 |
Language |
C# (Mono 4.6.2.0) |
Score |
100 |
Code Size |
1591 Byte |
Status |
AC |
Exec Time |
37 ms |
Memory |
2904 KB |
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
100 / 100 |
Status |
|
|
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 |
36 ms |
2904 KB |
subtask0_sample02.txt |
AC |
34 ms |
2776 KB |
subtask0_sample03.txt |
AC |
35 ms |
2904 KB |
subtask1_01.txt |
AC |
34 ms |
2776 KB |
subtask1_02.txt |
AC |
34 ms |
2776 KB |
subtask1_03.txt |
AC |
36 ms |
2776 KB |
subtask1_04.txt |
AC |
36 ms |
2904 KB |
subtask1_05.txt |
AC |
34 ms |
2776 KB |
subtask1_06.txt |
AC |
37 ms |
2776 KB |
subtask1_07.txt |
AC |
35 ms |
2776 KB |
subtask1_08.txt |
AC |
34 ms |
2776 KB |
subtask1_09.txt |
AC |
34 ms |
2776 KB |
subtask1_10.txt |
AC |
35 ms |
2776 KB |
subtask1_11.txt |
AC |
35 ms |
2904 KB |
subtask1_12.txt |
AC |
34 ms |
2776 KB |
subtask1_13.txt |
AC |
35 ms |
2776 KB |
subtask1_14.txt |
AC |
35 ms |
2776 KB |
subtask1_15.txt |
AC |
35 ms |
2776 KB |
subtask1_16.txt |
AC |
35 ms |
2776 KB |
subtask1_17.txt |
AC |
34 ms |
2884 KB |
subtask1_18.txt |
AC |
35 ms |
2884 KB |
subtask1_19.txt |
AC |
35 ms |
2776 KB |
subtask1_20.txt |
AC |
37 ms |
2776 KB |
subtask1_21.txt |
AC |
35 ms |
2776 KB |
subtask1_22.txt |
AC |
35 ms |
2776 KB |