Submission #691258
Source Code Expand
#include <iostream>
#include <fstream>
#include <cstdio>
#include <cmath>
#include <vector>
#include <string>
#include <set>
#include <map>
#include <stack>
#include <queue>
#include <algorithm>
using namespace std;
#define REP(i,n) for(int i=0; i<n; i++)
#define FOR(i,a,b) for(int i=a; i<=b; i++)
#define FORR(i,a,b) for (int i=a; i>=b; i--)
#define pi M_PI
typedef long long ll;
typedef vector<int> VI;
typedef vector<ll> VL;
typedef vector<VI> VVI;
typedef pair<int,int> PII;
char maze[50][50];
int d[50][50] = {};
int sx, sy, gx, gy;
int r, c;
int dx[4] = {-1, 1, 0, 0}, dy[4] = {0, 0, -1, 1};
bool isin(int x, int y){
return x>=0 && x<r && y>=0 && y<c;
}
int main(void){
cin >> r >> c;
cin >> sx >> sy >> gx >> gy;
sx--; sy--; gx--; gy--;
REP(i,r) REP(j,c) cin >> maze[i][j];
queue<PII> q;
q.push(PII(sx,sy));
while(!q.empty()){
PII p = q.front();
q.pop();
REP(k,4){
int x = p.first+dx[k], y = p.second+dy[k];
if (!isin(x,y) || d[x][y]>0 || maze[x][y]=='#') continue;
d[x][y] = d[p.first][p.second]+1;
q.push(PII(x,y));
}
if (d[gx][gy]>0)
break;
}
cout << d[gx][gy] << endl;
return 0;
}
Submission Info
Submission Time |
|
Task |
A - 幅優先探索 |
User |
TangentDay |
Language |
C++14 (GCC 5.4.1) |
Score |
100 |
Code Size |
1306 Byte |
Status |
AC |
Exec Time |
5 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 |
5 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 |
4 ms |
256 KB |
subtask1_05.txt |
AC |
5 ms |
256 KB |
subtask1_06.txt |
AC |
5 ms |
256 KB |
subtask1_07.txt |
AC |
4 ms |
256 KB |
subtask1_08.txt |
AC |
4 ms |
256 KB |
subtask1_09.txt |
AC |
4 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 |
4 ms |
256 KB |
subtask1_17.txt |
AC |
4 ms |
256 KB |
subtask1_18.txt |
AC |
4 ms |
256 KB |
subtask1_19.txt |
AC |
4 ms |
256 KB |
subtask1_20.txt |
AC |
4 ms |
256 KB |
subtask1_21.txt |
AC |
4 ms |
256 KB |
subtask1_22.txt |
AC |
4 ms |
256 KB |