#B. 返回飞船

    远端评测题 1000ms 512MiB

返回飞船

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

z题目背景

星际探索者酥酥在一次勇敢的探险中,不慎降落在了一个未知的星球上。这个星球表面布满了复杂的地形和未知的障碍,酥酥必须找到一条安全的路线返回她的飞船。

星球的表面可以用一个巨大的矩阵网格来表示,每个网格单元包含了不同的地形信息,这使得酥酥的行进充满了挑战。你能帮助酥酥找到返回飞船的最短路径吗?

题目描述

给定一个 nnmm 列的 0101 矩阵,表示星球表面的地形图,矩阵中的每个单元格 (i,j)(i, j) 对应于星球表面的一个特定位置(1in1 \leq i \leq n1jm1 \leq j \leq m)。

你的任务是帮助酥酥从矩阵的左上角(起点)前往右下角(飞船所在地)。她的移动规则如下:

  • 酥酥当前位于格子 (i,j)(i, j) 时,她下一步可以移动到 (i1,j)(i - 1, j)(i+1,j)(i + 1, j)(i,j1)(i, j - 1)(i,j+1)(i, j + 1) 中的任何一个格子。
  • 酥酥不能离开这个矩阵的范围,即她的位置 (i,j)(i, j) 必须始终满足 1in1 \leq i \leq n1jm1 \leq j \leq m
  • 酥酥移动时,两个格子的地形必须不同。即如果一个格子标记为 00,她只能移动到标记为 11的格子上,反之亦然。

酥酥每移动一步将消耗一定的时间。你的目标是找到一条耗时最短的路径,帮助她从 (1,1)(1, 1) 到达 (n,m)(n, m)。除了给出最短耗时外,还需给出一种符合最短耗时的具体移动方案。

输入格式

本题中每个测试点包含多组测试数据。第一行为一个正整数 TT,表示测试数据的组数。对于每组测试数据:

第一行包含两个整数 n,mn, m1n,m2×1031 \leq n, m \leq 2 \times 10^3),分别表示矩阵的行数和列数。 接下来的 nn 行,每行包含一个长度为 mm 的字符串,仅由字符 01 组成,表示星球的地形图。

所有测试数据的 nn 之和和 mm 之和均不超过 2×1032 \times 10^3

输出格式

对每组测试数据,输出一行或两行:

如果酥酥无法从起点到达飞船,仅输出一行 -1 表示无解。

否则,按照以下规则输出:

  • 第一行输出一个整数 tt,表示酥酥从起点到飞船的最短耗时。
  • 第二行输出一个长度为 tt 的字符串 ss,仅由字符 LRUD 组成,表示酥酥的移动方向:
    • 若酥酥的第 ii 次移动是从 (i,j)(i, j) 向上移动到 (i1,j)(i - 1, j),则 si=Us_i = \texttt{U}
    • 若酥酥的第 ii 次移动是从 (i,j)(i, j) 向下移动到 (i+1,j)(i + 1,j), 则 si=Ds_i = \texttt{D}
    • 若酥酥的第 ii 次移动是从 (i,j)(i, j) 向下移动到 (i,j1)(i ,j-1), 则 si=Ls_i = \texttt{L}
    • 若酥酥的第 ii 次移动是从 (i,j)(i, j) 向下移动到 (i,j+1)(i ,j+1), 则 si=Rs_i = \texttt{R}

输入输出样例

输入 #1

2
2 2
01
10
2 2
01
11

输出 #1

2
RD
-1

2024年5月17日城阳区周赛-初中组

未参加
状态
已结束
规则
IOI
题目
4
开始于
2024-5-17 18:00
结束于
2024-5-20 0:00
持续时间
3 小时
主持人
参赛人数
11