Submission #691250
Source Code Expand
#include <bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=0; i<n; i++)
typedef long long ll;
typedef pair<int,int> pii;
const int dx[4] = {0, 1, -1, 0};
const int dy[4] = {1, 0, 0, -1};
struct node {
int y, x, c;
node(int yy, int xx, int cc) {
y = yy;
x = xx;
c = cc;
}
};
int main() {
int r, c;
cin >> r >> c;
bool pass[52][52] = {};
int visit[52][52] = {};
int sx, sy, gx, gy;
cin >> sy >> sx >> gy >> gx;
rep(y, r) {
string s;
cin >> s;
rep(x, c) {
pass[y+1][x+1] = (s[x] == '.');
}
}
queue<node> que;
que.push(node(sy, sx, 0));
while(!que.empty()) {
node p = que.front();
que.pop();
if( visit[p.y][p.x] > 0 ) {
continue;
}
visit[p.y][p.x] = p.c;
if( p.y == gy && p.x == gx ) {
cout << p.c << endl;
break;
}
rep(i, 4) {
int nx = p.x + dx[i];
int ny = p.y + dy[i];
if( visit[ny][nx] == 0 && pass[ny][nx] ) {
que.push(node(ny, nx, p.c+1));
}
}
}
return 0;
}
Submission Info
Submission Time |
|
Task |
A - 幅優先探索 |
User |
NegiMagnet |
Language |
C++14 (GCC 5.4.1) |
Score |
100 |
Code Size |
1012 Byte |
Status |
AC |
Exec Time |
7 ms |
Memory |
256 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 |
4 ms |
256 KB |
subtask0_sample02.txt |
AC |
4 ms |
256 KB |
subtask0_sample03.txt |
AC |
4 ms |
256 KB |
subtask1_01.txt |
AC |
4 ms |
256 KB |
subtask1_02.txt |
AC |
4 ms |
256 KB |
subtask1_03.txt |
AC |
4 ms |
256 KB |
subtask1_04.txt |
AC |
5 ms |
256 KB |
subtask1_05.txt |
AC |
5 ms |
256 KB |
subtask1_06.txt |
AC |
4 ms |
256 KB |
subtask1_07.txt |
AC |
4 ms |
256 KB |
subtask1_08.txt |
AC |
5 ms |
256 KB |
subtask1_09.txt |
AC |
5 ms |
256 KB |
subtask1_10.txt |
AC |
5 ms |
256 KB |
subtask1_11.txt |
AC |
4 ms |
256 KB |
subtask1_12.txt |
AC |
4 ms |
256 KB |
subtask1_13.txt |
AC |
4 ms |
256 KB |
subtask1_14.txt |
AC |
4 ms |
256 KB |
subtask1_15.txt |
AC |
4 ms |
256 KB |
subtask1_16.txt |
AC |
5 ms |
256 KB |
subtask1_17.txt |
AC |
4 ms |
256 KB |
subtask1_18.txt |
AC |
4 ms |
256 KB |
subtask1_19.txt |
AC |
7 ms |
256 KB |
subtask1_20.txt |
AC |
5 ms |
256 KB |
subtask1_21.txt |
AC |
4 ms |
256 KB |
subtask1_22.txt |
AC |
6 ms |
256 KB |