50分!!!悬赏一关注
  • 板块B3625 迷宫寻路
  • 楼主Blued
  • 当前回复4
  • 已保存回复4
  • 发布时间2022/10/10 16:38
  • 上次更新2023/10/27 07:59:43
查看原帖
50分!!!悬赏一关注
649751
Blued楼主2022/10/10 16:38

(悲

#include<bits/stdc++.h>
#define int long long
using namespace std;

const int N = 150;

bool vis[N][N];

int n , m;

char a[N][N];

void dfs(int x , int y)
{
	if(x < 0 || x >= n || y < 0 || y >= n)
	return ;
	
	if(a[x][y] == '#')
	return ;
	
	if(vis[x][y])
	return ;
	
	vis[x][y] = true;
	
	dfs(x - 1 , y);
	dfs(x + 1 , y);
	dfs(x , y - 1);
	dfs(x , y + 1);
}

main()
{
	cin >> n >> m;
	
	for(int i = 0;i < n;i ++)
	cin >> a[i];
	
	dfs(0 , 0);
	
//	for(int i = 0;i < n;i ++)
//	for(int j = 0;j < n;j ++)
//	if(vis[i][j])
//	cout << i << ' ' << j << '\n';
	
	if(vis[n - 1][m - 1])
	puts("Yes");
	else
	puts("No");
	return false;
}
2022/10/10 16:38
加载中...