代码:
#include<bits/stdc++.h>
using namespace std;
int n,m;
bool a[51][51];
int dx[]={1,-1,0,0},dy[]={0,0,1,-1},x=1,y=1,q[3][2501];
int bfs()
{
int head=1,tail=1;
q[1][1]=x;
q[2][1]=y;
while(head<=tail)
{
for(int i=0;i<4;i++)
{
x=q[1][head]+dx[i];
y=q[2][head]+dy[i];
if(a[x][y]==1)
{
tail++;
q[1][tail]=x;
q[2][tail]=y;
a[x][y]=0;
if(x==n&&y==m)
return 1;
}
}
head++;
}
return 0;
}
int main()
{
cin>>n>>m;
char c;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
cin>>c;
if(c=='.')
a[i][j]=1;
}
}
if(bfs())
cout<<"Yes";
else
cout<<"No";
return 0;
}