atcoder#ABC227H. [ABC227H] Eat Them All

[ABC227H] Eat Them All

题目描述

3 3 行、横 3 3 列のマス目があります。上から i i 行目、左から j j 列目のマスを (i,j) (i,j) と書くことにします。(i,j) (i,j) には Ai,j A_{i,j} 個の猫缶が置かれています。

すぬけ君は現在 (1,1) (1,1) にいます。すぬけ君は以下の行動を繰り返します。

  • すぬけ君が現在いるマスに置かれている猫缶を 1 1 つ食べた後、隣接するマスに移動する

すぬけ君は、現在いるマスに猫缶が残っていないとき行動を終了します。

行動を終了した時に以下の条件が全て満たされることは可能ですか?可能ならばすぬけ君の行動の一例を示してください。

  • すぬけ君は (1,1) (1,1) にいる。
  • どのマスにも猫缶が残っていない。

输入格式

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

A1,1 A_{1,1} A1,2 A_{1,2} A1,3 A_{1,3} A2,1 A_{2,1} A2,2 A_{2,2} A2,3 A_{2,3} A3,1 A_{3,1} A3,2 A_{3,2} A3,3 A_{3,3}

输出格式

条件が全て満たされることが不可能な時は NO と出力せよ。

そうでなく、可能な時は L,R,U,D からなる文字列 S S を出力せよ。S S i i 文字目はすぬけ君の i i 回目の行動の内容を表し、L1 1 つ左のマス、R1 1 つ右のマス、U1 1 つ上のマス、D1 1 つ下のマスに移動することをそれぞれ意味する。

题目大意

现有一个 3×33\times 3 的矩阵,其中坐标为 (i,j)(i,j) 的格子里放着 ai,ja_{i,j} 个罐头。

现在 (1,1)(1,1) 位置有一只狐狸,它要吃罐头。每一步它会这样操作:

  • 吃掉当前格子上的一个罐头。
  • 向上下左右任意一个方向移动一格,不能不动也不能走出边界。

当它到达一个格子时没有罐头可吃,它就会停止移动。

问是否能满足下列要求:

  • 吃完所有罐头。
  • 最终停在 (1,1)(1,1)

如果不能,输出 NO;否则输出移动序列,上下左右分别用 UDLR 表示。

保证每个格子上初始罐头数量不超过 100100 个。

1 1 1
1 1 1
1 2 1
DDRUDRUULL
2 4 2
2 1 1
1 1 2
NO
2 2 3
2 1 2
1 3 2
DUDDRUDRLRUULRDULL

提示

制約

  • 1  Ai,j  100 1\ \leq\ A_{i,j}\ \leq\ 100
  • 入力は全て整数

Sample Explanation 1

すぬけ君は終了時点で (1,1) (1,1) に戻っていなければいけないことに注意してください。 なお、RRDDLUDLUU などの出力も正しいです。

Sample Explanation 2

目標を達成することは不可能なので、NO と出力してください。