Submission #1318213


Source Code Expand

#include <iostream>
#include <string>
#include <queue>
#include <map>

using namespace std;

typedef pair<int,int> P;
const int INF=1e+8;
int w,h,sx,sy,gx,gy;
int dx[4]={1,0,-1,0};
int dy[4]={0,1,0,-1};
int d[101][101];
string maze[101];


int bfs();

int main(){
	cin>>h>>w;
	cin>>sy>>sx;
	cin>>gy>>gx;

	sx=sx-1;
	sy=sy-1;
	gx=gx-1;
	gy=gy-1;
	for(int y=0;y<h;y++){
		cin>>maze[y];
	}

	// for(int y=0;y<h;y++){
	// 	for(int x=0;x<w;x++){
	// 		if(maze[y][x]=='S'){
	// 			sx=x;
	// 			sy=y;
	// 		}else if(maze[y][x]=='G'){
	// 			gx=x;
	// 			gy=y;
				
	// 		}
	// 	}
	// }



	int ans=bfs();
	cout<<ans<<endl;
}


int bfs(){
	queue<P> que;

	for(int y=0;y<h;y++){
		for(int x=0;x<w;x++){
			d[y][x]=INF;
		}
	}
	que.push( P(sx,sy)  );
	d[sy][sx]=0;

	while(!que.empty()){
		
		pair<int,int> tmp=que.front();
		que.pop();

		int x=tmp.first;
		int y=tmp.second;

		if(x==gx&&y==gy)break;

		for(int i=0;i<4;i++){
			int mx=x+dx[i];
			int my=y+dy[i];

			if(mx<0||my<0||mx>=w||my>=h)continue;
			if(maze[my][mx]!='#'&&d[my][mx]==INF){
				que.push( P(mx,my) );
				d[my][mx]=d[y][x]+1;
			}
			
		}
		
	}
	return d[gy][gx];
}

Submission Info

Submission Time
Task C - 幅優先探索
User Agodoriru
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1218 Byte
Status AC
Exec Time 1 ms
Memory 256 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 3
AC × 25
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 1 ms 256 KB
subtask0_sample02.txt AC 1 ms 256 KB
subtask0_sample03.txt AC 1 ms 256 KB
subtask1_01.txt AC 1 ms 256 KB
subtask1_02.txt AC 1 ms 256 KB
subtask1_03.txt AC 1 ms 256 KB
subtask1_04.txt AC 1 ms 256 KB
subtask1_05.txt AC 1 ms 256 KB
subtask1_06.txt AC 1 ms 256 KB
subtask1_07.txt AC 1 ms 256 KB
subtask1_08.txt AC 1 ms 256 KB
subtask1_09.txt AC 1 ms 256 KB
subtask1_10.txt AC 1 ms 256 KB
subtask1_11.txt AC 1 ms 256 KB
subtask1_12.txt AC 1 ms 256 KB
subtask1_13.txt AC 1 ms 256 KB
subtask1_14.txt AC 1 ms 256 KB
subtask1_15.txt AC 1 ms 256 KB
subtask1_16.txt AC 1 ms 256 KB
subtask1_17.txt AC 1 ms 256 KB
subtask1_18.txt AC 1 ms 256 KB
subtask1_19.txt AC 1 ms 256 KB
subtask1_20.txt AC 1 ms 256 KB
subtask1_21.txt AC 1 ms 256 KB
subtask1_22.txt AC 1 ms 256 KB