Submission #162416
Source Code Expand
import std.stdio, std.string, std.conv;
import std.algorithm, std.array, std.typecons;
void main()
{
for(string s; (s=readln().chomp()).length;)
{
auto RC = s.split().map!(to!int)();
immutable auto R=RC[0], C=RC[1];
auto sxy = readln().split().map!(to!int)();
immutable auto sy=sxy[0], sx=sxy[1];
auto gxy = readln().split().map!(to!int)();
immutable auto gy=gxy[0], gx=gxy[1];
auto c = new string[R];
foreach(ref v; c)
v = readln();
auto m = new int[][](R,C);
foreach(ref a; m)
a[]=-1;
alias Tuple!(int,"x",int,"y",int,"d") Point;
Point[] q;
q~=Point(sx-1,sy-1,0);
while(!q.empty)
{
auto p = q.front; q.popFront();
if(p.x<0 || C<=p.x || p.y<0 || R<=p.y || m[p.y][p.x]>=0 || c[p.y][p.x]=='#')
continue;
m[p.y][p.x]=p.d;
q~=Point(p.x-1,p.y,p.d+1);
q~=Point(p.x+1,p.y,p.d+1);
q~=Point(p.x,p.y-1,p.d+1);
q~=Point(p.x,p.y+1,p.d+1);
}
writeln(m[gy-1][gx-1]);
}
}
Submission Info
Submission Time |
|
Task |
C - 幅優先探索 |
User |
jasy |
Language |
D (DMD 2.060) |
Score |
100 |
Code Size |
1165 Byte |
Status |
AC |
Exec Time |
23 ms |
Memory |
1312 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 |
20 ms |
800 KB |
subtask0_sample02.txt |
AC |
19 ms |
928 KB |
subtask0_sample03.txt |
AC |
22 ms |
1312 KB |
subtask1_01.txt |
AC |
22 ms |
928 KB |
subtask1_02.txt |
AC |
22 ms |
1052 KB |
subtask1_03.txt |
AC |
20 ms |
924 KB |
subtask1_04.txt |
AC |
22 ms |
1308 KB |
subtask1_05.txt |
AC |
22 ms |
1300 KB |
subtask1_06.txt |
AC |
21 ms |
1176 KB |
subtask1_07.txt |
AC |
20 ms |
800 KB |
subtask1_08.txt |
AC |
20 ms |
796 KB |
subtask1_09.txt |
AC |
20 ms |
1180 KB |
subtask1_10.txt |
AC |
20 ms |
920 KB |
subtask1_11.txt |
AC |
23 ms |
1300 KB |
subtask1_12.txt |
AC |
22 ms |
1176 KB |
subtask1_13.txt |
AC |
21 ms |
1176 KB |
subtask1_14.txt |
AC |
21 ms |
928 KB |
subtask1_15.txt |
AC |
21 ms |
1052 KB |
subtask1_16.txt |
AC |
21 ms |
1052 KB |
subtask1_17.txt |
AC |
21 ms |
1176 KB |
subtask1_18.txt |
AC |
21 ms |
1172 KB |
subtask1_19.txt |
AC |
22 ms |
924 KB |
subtask1_20.txt |
AC |
21 ms |
1056 KB |
subtask1_21.txt |
AC |
21 ms |
1048 KB |
subtask1_22.txt |
AC |
21 ms |
1052 KB |