AT_mujin_pc_2018_e.迷路

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

迷路

给定一个 NN 行 MM 列的网格地图。第 ii 行,第 jj 列的格子可以用 (i,j)(i,j) 表示。特别地,左上角的格子是 (1,1)(1,1),右下角的格子是 (N,M)(N,M)。

网格地图的状态由二维数组 ss 来表示,当 si,js_{i,j} 是 # 时表示格子 (i,j)(i,j) 上有障碍物,当 si,js_{i,j} 是 . 或 SS 或 GG 时表示格子上没有障碍物。

机器人从起点 SS 出发,在尽可能短的时间内到达目标 GG。

然而,机器人并不总是可以朝任意方向移动。

给定一个长度为 KK 的字符串 dd,每秒钟,机器人可以移动到相邻的格子,或者停留在当前格子。但是,从 tt 秒到 t+1t+1 秒之间,其中 tt 对 KK 取余得到余数 r(0≤r≤K−1)r (0 \le r \le K-1),那么机器人只能朝着 dr+1d_{r+1} 的方向移动一格,并花费 11 秒钟的时间。假设当前位于 (i,j)(i,j),若 dr+1d_{r+1} 是 UU,则机器人可以移动到 (i−1,j)(i-1,j);若 dr+1d_{r+1} 是 DD,则机器人可以移动到 (i+1,j)(i+1,j);若 dr+1d_{r+1} 是 LL,则机器人可以移动到 (i,j−1)(i,j-1);若 dr+1d_{r+1} 是 RR,则机器人可以移动到 (i,j+1)(i,j+1)。机器人不能移动出网格的范围,也不能移动到有障碍物的格子上。

在以上条件下,请求出从起点 SS 到目标 GG 的最短时间。

输入格式

输入按以下格式从标准输入给出。

N M K
d1...dK
s11...s1M
...
sN1...sNM

输出格式

输出机器人从 SS 移动到 GG 所需的最短时间。如果无论如何移动都不能从 SS 移动到 GG,则输出 -1。

输入输出样例

  • 输入#1

    2 3 5
    UDRRL
    S..
    .#G

    输出#1

    7
  • 输入#2

    3 3 5
    UDUDD
    S..
    ...
    .G.

    输出#2

    -1
  • 输入#3

    3 3 5
    UDLRD
    S..
    .#.
    ..G

    输出#3

    12

输入解题思路,AI测评打分。不知道怎么写?

首页