Submission #10960711


Source Code Expand

#include <iostream>
#define M 505
using namespace std;
char map[M][M];
int mark[M][M];
int sx, sy, gx, gy;
int flag;
int dx[] = {-1, 0, 0, 1};
int dy[] = {0, -1, 1, 0}; 
int n, m;
void dfs(int x, int y) {
	//能走到终点 
	if (map[x][y] == 'g') {
		flag = 1;
		cout << "Yes" << endl;
		exit(0);
	}
	mark[x][y] = 1;
	for (int i = 0; i < 4; i++) {
		int x_new = x + dx[i];
		int y_new = y + dy[i];
		//之前未被访问过   不是障碍物   不越界 
		if (mark[x_new][y_new] == 0 && x_new >= 1 && x_new <= n && y_new >= 1 && y_new <= m && map[x_new][y_new] != '#')
			dfs(x_new, y_new);
	}
	mark[x][y] = 0;
}
int main(void) {
	cin >> n >> m;
	for (int i = 1; i <= n; i++) {
		for (int j = 1; j <= m; j++) {
			cin >> map[i][j];
			if (map[i][j] == 's') {
				sx = i;
				sy = j;
			}
		}
	}
	dfs(sx, sy);
	cout << "No" << endl;
	return 0;		
}

Submission Info

Submission Time
Task A - 深さ優先探索
User luogu_bot5
Language C++ (GCC 5.4.1)
Score 0
Code Size 889 Byte
Status CE

Compile Error

./Main.cpp: In function ‘void dfs(int, int)’:
./Main.cpp:16:9: error: ‘exit’ was not declared in this scope
   exit(0);
         ^