#include #include #include using namespace std; using namespace atcoder; using mint = modint998244353; #define rep(i,n) for (int i = 0; i < (n); ++i) #define Inf32 1000000001 #define Inf64 4000000000000000001 void ng(){ cout<<"No"< dx = {1,-1,0,0},dy = {0,0,1,-1}; string s = "DURL"; void bfs(vector> &d,vector &S,int sx,int sy){ int h = d.size(),w = d[0].size(); d[sx][sy] = 0; queue> Q; Q.emplace(sx,sy); while(Q.size()>0){ int x = Q.front().first; int y = Q.front().second; Q.pop(); rep(i,4){ int xx = x + dx[i],yy = y+dy[i]; if(xx<0||xx>=h||yy<0||yy>=w)continue; if(S[xx][yy]=='#')continue; if(d[xx][yy]!=Inf32)continue; d[xx][yy] = d[x][y]+1; Q.emplace(xx,yy); } } } int main(){ int h,w; cin>>h>>w; int K; cin>>K; int L,R; cin>>L>>R; vector S(h); rep(i,h)cin>>S[i]; if((R-L+1)%2==1)ng(); if((h+w)%2 != K%2)ng(); // cout<<'a'<(w,Inf32)); auto d1 = d0; bfs(d0,S,0,0); //cout<<'b'<=h||yy<0||yy>=w){ f = false; } if(S[xx][yy]=='#')f = false; } if(f)ok = k; } if(ok==-1)continue; cout<<"Yes"<=h||yy<0||yy>=w)continue; if(d0[xx][yy]+1!=d0[cx][cy])continue; //cout<=h||yy<0||yy>=w)continue; if(d1[xx][yy]+1!=d1[cx][cy])continue; temp += s[k]; cx = xx,cy = yy; last = k; break; } } while(temp.size()!=K){ temp += s[last^1]; temp += s[last]; } cout<