#include <iostream> using namespace std; char a[110][110];int vis[110][110]; int n,m; int dx[] = {1,0,-1,0}; int dy[] = {0,-1,0,1}; void dfs(int x,int y){ if(x>=n&&y>=m){ return ; } for(int i = 0;i<4;i++){ int xx = x+dx[i],yy = y+dy[i]; if(a[xx][yy]=='.'&&!vis[xx][yy]){ vis[xx][yy] = 1; dfs(xx,yy); } } // return 0; } int 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(n==1&&m==1&&a[n][m]=='.'||vis[n][m]){ cout<<"Yes\n"; return 0; } else{ cout<<"No\n"; return 0; } return 0; } // 64 位输出请用 printf("%lld")