#include <bits/stdc++.h>
#define int long long
using namespace std;
int n,m,ans;
char a[105][105];
bool f[105][1055];
void dfs(int x,int y)
{
if(x<=0||x>n||y<=0||y>m)return;
f[x][y]=1;
if(x==n&&y==m)
{
ans=1;
return;
}
if(a[x][y+1]=='.'&&!f[x][y+1])dfs(x,y+1),f[x][y+1]=1;
if(a[x][y-1]=='.'&&!f[x][y-1])dfs(x,y-1),f[x][y-1]=1;
if(a[x+1][y]=='.'&&!f[x+1][y])dfs(x+1,y),f[x+1][y]=1;
if(a[x+1][y]=='.'&&!f[x-1][y])dfs(x-1,y),f[x-1][y]=1;
}
signed main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin>>a[i][j];
dfs(1,1);
if(ans)cout<<"Yes";
else cout<<"No";
return 0;
}
样例输出 No 但评测全AC。