Universal Cup Judging System

Universal Cup

時間限制: 1.0 s 記憶體限制: 256 MB 總分: 100 可 Hack ✓
统计

给定一个 $n \times m$ 的网格迷宫,每个单元格 $(i, j)$ 要么是空白的,要么是障碍物。George 现在位于迷宫中,起始单元格为 $(sr, sc)$,他需要访问迷宫中所有的空白单元格,并最终到达出口单元格 $(er, ec)$。假设 George 当前位于单元格 $(i, j)$,他可以进行 4 种移动:

  1. 尝试向左移动(记为 “L”)。如果 $j > 1$ 且单元格 $(i, j - 1)$ 是空白的,George 将移动到 $(i, j - 1)$,否则 George 将停留在 $(i, j)$。
  2. 尝试向右移动(记为 “R”)。如果 $j < m$ 且单元格 $(i, j + 1)$ 是空白的,George 将移动到 $(i, j + 1)$,否则 George 将停留在 $(i, j)$。
  3. 尝试向上移动(记为 “U”)。如果 $i > 1$ 且单元格 $(i - 1, j)$ 是空白的,George 将移动到 $(i - 1, j)$,否则 George 将停留在 $(i, j)$。
  4. 尝试向下移动(记为 “D”)。如果 $i < n$ 且单元格 $(i + 1, j)$ 是空白的,George 将移动到 $(i + 1, j)$,否则 George 将停留在 $(i, j)$。

他的任务是进行一系列移动,以访问所有空白单元格并最终到达出口单元格,其中起始单元格在开始时即被视为已访问。为了增加趣味性,他希望他的移动序列是一个回文串。形式化地,设他的移动序列为 $M_1, M_2, \dots, M_k$ ($M_i \in \{L, R, U, D\}$),则对于所有整数 $i$ ($1 \le i \le k$),满足 $M_i$ 和 $M_{k-i+1}$ 相同。

请帮助他找到一个回文移动序列,以访问所有空白单元格并最终到达出口单元格。如果存在多个解,输出其中任意一个即可。如果不存在解,请报告。

输入格式

第一行包含两个整数 $n, m$ ($1 \le n, m \le 30$),表示迷宫的大小。 接下来的 $n$ 行,每行包含一个二进制字符串,表示给定的迷宫。第 $i$ 行字符串中的第 $j$ 个字符,如果为 “1” 则表示单元格 $(i, j)$ 是空白的,如果为 “0” 则表示单元格 $(i, j)$ 是障碍物。 下一行包含四个整数 $sr, sc, er, ec$ ($1 \le sr, er \le n, 1 \le sc, ec \le m$),表示起始单元格和出口单元格的位置。 保证起始单元格 $(sr, sc)$ 和出口单元格 $(er, ec)$ 均为空白。

输出格式

如果存在解,输出一行移动字符串 $S$ ($0 \le |S| \le 10^6$),否则输出一行 “-1”。 如果通过不进行任何操作即可达到目标,输出一个空字符串即可。但在这种情况下,你应该输出一个空行。 请勿在输出末尾添加多余的空格,否则将获得 “Wrong Answer” 判决。

样例

输入 1

2 2
11
11
1 1 2 2

输出 1

RDLUULDR

输入 2

2 2
10
01
1 1 2 2

输出 2

-1

说明

  • 对于第一个样例,基于移动序列的路径如下:
    1. 尝试从 $(1, 1)$ 向右移动,因为 $j = 1 < m$ 且 $(1, 2)$ 是空白的,George 移动到 $(1, 2)$
    2. 尝试从 $(1, 2)$ 向下移动,因为 $i = 1 < n$ 且 $(2, 2)$ 是空白的,George 移动到 $(2, 2)$
    3. 尝试从 $(2, 2)$ 向左移动,因为 $j = 2 > 1$ 且 $(2, 1)$ 是空白的,George 移动到 $(2, 1)$
    4. 尝试从 $(2, 1)$ 向上移动,因为 $i = 2 > 1$ 且 $(1, 1)$ 是空白的,George 移动到 $(1, 1)$
    5. 尝试从 $(1, 1)$ 向上移动,因为 $i = 1$,George 停留在 $(1, 1)$
    6. 尝试从 $(1, 1)$ 向左移动,因为 $j = 1$,George 停留在 $(1, 1)$
    7. 尝试从 $(1, 1)$ 向下移动,因为 $i = 1 < n$ 且 $(2, 1)$ 是空白的,George 移动到 $(2, 1)$
    8. 尝试从 $(2, 1)$ 向右移动,因为 $j = 1 < m$ 且 $(2, 2)$ 是空白的,George 移动到 $(2, 2)$ 可以看到所有空白单元格都被访问了,且最终单元格正是出口单元格 $(2, 2)$。
  • 对于第二个样例,George 从 $(1, 1)$ 永远无法到达 $(2, 2)$,因此输出 “-1”。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.