#abc221g. [abc221_g]Jumping sequence

[abc221_g]Jumping sequence

問題文

無限に広がる 22 次元の座標平面を考えます。 高橋君は最初 (0,0)(0,0) に立っており、今から上下左右いずれかの方向を選んでジャンプすることを NN 回行います。 それぞれのジャンプで移動する距離は定まっており、具体的には ii 回目のジャンプでは距離 DiD_i を移動します。 NN 回のジャンプの後で、ちょうど位置 (A,B)(A,B) にいるようにすることは可能か判定し、 可能ならばそのような移動方法を 11 つ示してください。

ただし、現在の位置が (X,Y)(X,Y) のときに、それぞれの方向を選んで距離 DD のジャンプをしたときの着地地点はそれぞれ以下の通りです。

  • 上方向 : (X,Y)to(X,Y+D)(X,Y) \\to (X,Y+D)
  • 下方向 : (X,Y)to(X,YD)(X,Y) \\to (X,Y-D)
  • 左方向 : (X,Y)to(XD,Y)(X,Y) \\to (X-D,Y)
  • 右方向 : (X,Y)to(X+D,Y)(X,Y) \\to (X+D,Y)

制約

  • 1leqNleq20001 \\leq N \\leq 2000
  • $\\lvert A\\rvert, \\lvert B\\rvert \\leq 3.6\\times 10^6$
  • 1leqDileq18001 \\leq D_i \\leq 1800
  • 入力は全て整数である。

入力

入力は以下の形式で標準入力から与えられる。

NN AA BB D1D_1 D2D_2 ldots\\ldots DND_N

出力

条件をみたす移動方法が存在するならば Yes 、そうでないならば No11 行目に出力せよ。
Yes の場合は 22 行目に条件をみたす移動方法を、U , D , L , R からなる長さ NN の文字列 SS として出力せよ。
ただし、SSii 文字目が

  • U のとき、 ii 回目のジャンプでは上方向に移動する
  • D のとき、 ii 回目のジャンプでは下方向に移動する
  • L のとき、 ii 回目のジャンプでは左方向に移動する
  • R のとき、 ii 回目のジャンプでは右方向に移動する

ことを指す。


入力例 1

3 2 -2
1 2 3

出力例 1

Yes
LDR

11 回目のジャンプで左方向に、22 回目のジャンプで下方向に、33 回目のジャンプで右方向にジャンプすると、 (0,0)to(1,0)to(1,2)to(2,2)(0,0)\\to(-1,0)\\to(-1,-2)\\to(2,-2) と高橋君は動き、 最終的に (2,2)(2,-2) に到達しているためこれは条件をみたしています。


入力例 2

2 1 0
1 6

出力例 2

No

22 回のジャンプの後でちょうど (1,0)(1,0) にいるようにすることはできません。


入力例 3

5 6 7
1 3 5 7 9

出力例 3

Yes
LRLUR