哪里错了???
查看原帖
哪里错了???
1086735
LYQ_666楼主2024/5/12 10:31

0分

#include <bits/stdc++.h> 
using namespace std;
char a[101][101];
int n,m,x1,x2,y,y2;
void dfs(int x,int y)
{
	a[x][y]='#';
	if(x-1>=0&&a[x-1][y]=='.') dfs(x-1,y);
	if(x+1<n&&a[x+1][y]=='.') dfs(x+1,y);
	if(y-1>=0&&a[x][y-1]=='.') dfs(x,y-1);
	if(y+1<n&&a[x][y+1]=='.') dfs(x,y+1);
}
int main()
{
	cin>>n>>m;
 		for(int i=1;i<=n;i++)
 		{
 			for(int j=1;j<=m;j++)
 			{
 				cin>>a[i][j];
		 	}
		}
		x1=1;y=1;x2=n;y2=m; 
		if(a[x2][y2]=='#') cout<<"NO"<<endl;
		else 
		{
			dfs(x1,y);
			if(a[x2][y2]=='.')
			{
				cout<<"YES"<<endl;
			}
			else 
			{
			    cout<<"NO"<<endl;	
			}
		}	
	return 0;
}
2024/5/12 10:31
加载中...