Submission #162421
Source Code Expand
#include<cstdio>
#include<vector>
#include<set>
#include<map>
#include<queue>
#include<algorithm>
#include<string>
#include<utility>
#include<iostream>
#include<cmath>
using namespace std;
#define REP(i,a,b) for(i=a;i<b;i++)
#define rep(i,n) REP(i,0,n)
#define mygc(c) (c)=getchar_unlocked()
#define mypc(c) putchar_unlocked(c)
void reader(int *x){int k,m=0;*x=0;for(;;){mygc(k);if(k=='-'){m=1;break;}if('0'<=k&&k<='9'){*x=k-'0';break;}}for(;;){mygc(k);if(k<'0'||k>'9')break;*x=(*x)*10+k-'0';}if(m)(*x)=-(*x);}
void reader(char x[], int len){int i,k;if(len==0)return;for(;;){mygc(k);if(!(k==' '||k=='\n'||k=='\t'||k=='\r')){x[0]=k;break;}}REP(i,1,len)mygc(x[i]);}
void writer(int x, char c){int i,sz=0,m=0;char buf[10];if(x<0)m=1,x=-x;while(x)buf[sz++]=x%10,x/=10;if(!sz)buf[sz++]=0;if(m)mypc('-');while(sz--)mypc(buf[sz]+'0');mypc(c);}
int main(){
int R, C, sr, sc, gr, gc, S, G;
char c[3000];
int i, j, k, RC;
int q[3000], q_st, q_size;
int dist[3000];
reader(&R);
reader(&C);
reader(&sr);
reader(&sc);
reader(&gr);
reader(&gc);
rep(i,R) reader(c+i*C, C);
RC = R*C;
S = (sr-1) * C + (sc - 1);
G = (gr-1) * C + (gc - 1);
int d[4] = {-1, 1, -C, C};
rep(i,RC) dist[i] = -1;
dist[S] = 0;
q[0] = S; q_st = 0; q_size = 1;
while(q_size){
i = q[q_st++]; q_size--;
rep(k,4){
j = i + d[k];
if(c[j]=='#' || dist[j] >= 0) continue;
dist[j] = dist[i] + 1;
q[q_st+q_size++] = j;
}
}
writer(dist[G], '\n');
return 0;
}
Submission Info
Submission Time |
|
Task |
C - 幅優先探索 |
User |
LayCurse |
Language |
C++ (G++ 4.6.4) |
Score |
100 |
Code Size |
1562 Byte |
Status |
AC |
Exec Time |
23 ms |
Memory |
928 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 |
844 KB |
subtask0_sample02.txt |
AC |
21 ms |
800 KB |
subtask0_sample03.txt |
AC |
19 ms |
928 KB |
subtask1_01.txt |
AC |
20 ms |
804 KB |
subtask1_02.txt |
AC |
21 ms |
928 KB |
subtask1_03.txt |
AC |
21 ms |
800 KB |
subtask1_04.txt |
AC |
21 ms |
800 KB |
subtask1_05.txt |
AC |
21 ms |
804 KB |
subtask1_06.txt |
AC |
20 ms |
924 KB |
subtask1_07.txt |
AC |
21 ms |
920 KB |
subtask1_08.txt |
AC |
21 ms |
804 KB |
subtask1_09.txt |
AC |
23 ms |
772 KB |
subtask1_10.txt |
AC |
21 ms |
920 KB |
subtask1_11.txt |
AC |
20 ms |
800 KB |
subtask1_12.txt |
AC |
21 ms |
788 KB |
subtask1_13.txt |
AC |
20 ms |
796 KB |
subtask1_14.txt |
AC |
21 ms |
792 KB |
subtask1_15.txt |
AC |
20 ms |
928 KB |
subtask1_16.txt |
AC |
21 ms |
928 KB |
subtask1_17.txt |
AC |
20 ms |
800 KB |
subtask1_18.txt |
AC |
21 ms |
744 KB |
subtask1_19.txt |
AC |
21 ms |
916 KB |
subtask1_20.txt |
AC |
20 ms |
804 KB |
subtask1_21.txt |
AC |
21 ms |
800 KB |
subtask1_22.txt |
AC |
20 ms |
928 KB |