这是代码QAQ
#include<bits/stdc++.h>
using namespace std;
int n,m;
char a[114][114];
int vis[114][114];
queue<pair<int,int> > s;
void bfs(){
while(!s.empty()){
int x=s.front().first;
int y=s.front().second;
vis[x][y]=1;
s.pop();
if(x==n&&y==m){
cout<<"Yes";
return;
}
if(a[x+1][y]=='.'&&!vis[x+1][y]){
s.push(make_pair(x+1,y));
}
if(a[x-1][y]=='.'&&!vis[x-1][y]){
s.push(make_pair(x-1,y));
}
if(a[x][y+1]=='.'&&!vis[x][y+1]){
s.push(make_pair(x,y+1));
}
if(a[x][y-1]=='.'&&!vis[x][y-1]){
s.push(make_pair(x,y-1));
}
}
cout<<"No";
}
int main(){
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>a[i][j];
}
}
s.push(make_pair(1,1));
bfs();
return 0;
}