#include<bits/stdc++.h> using namespace std; struct node{ int x,y; }; int n,m; queue q; char a[105][105]; bool vis[105][105]; int dx[4]={1,0,-1,0}; int dy[4]={0,1,0,-1}; int main(){ cin>>n>>m; for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ cin>>a[i][j]; } }if(a[1][1]'#'){ cout<<"NO"; return 0; } node d={1,1}; q.push(d); vis[1][1]=1; while(!q.empty()){ node f=q.front(); if(a[f.x][f.y]'*'){ cout<<"YES"; return 0; }for(int i=0;i<4;i++){ int nx=f.x+dx[i]; int ny=f.y+dy[i]; if(nx>=1&&nx<=4&&ny>=1&&ny<=4&&vis[nx][ny]==0&&a[nx][ny]!='#'){ vis[nx][ny]=1; node r={nx,ny}; q.push(r); } }q.pop(); }cout<<"NO"; return 0; }

1 条评论

  • 1