AT_past202004_h.1-9 Grid

通过率:0%

AC君温馨提醒

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

题目描述

给定一个 nn 行 mm 列的网格,网格中有且仅有一个格子为S,有且仅有一个格子为G,其余的格子内均为一个值在 11 到 99 之间的自然数。

现在,请找出一条这样的路径:从为S的格子出发,走一条最短的路径到达为G的格子。这条路径需要满足:

  • 假设这个路径需要经过 (k+1)(k+1) 个网格(移动 kk 次),设这个路径在第 ii 次移动后所到达的格子中的字符为 cic_i。
  • 你可以找到 99 个正整数 i1,i2,...,i9i_1,i_2,...,i_9,使得 ci1=c_{i_1}=1,ci2=c_{i_2}=2,...,ci9=c_{i_9}=9。(1≤i1≤i2≤...≤i9<k1 \le i_1 \le i_2 \le ... \le i_9 \lt k)
  • 毫无疑问,c0=c_0=S,ck=c_k=G。
  • 从一个网格出发,只能移动到与其上下左右相邻的格子里,不能出界。
  • 同一个格子可以被访问多次。(包括为S和G的格子)

输入格式

第一行:两个正整数 n,mn,m;

接下来 nn 行:每行 mm 个字符,描述这个方阵。

输出格式

若存在符合条件的路径,输出最少移动次数;否则,输出-1。

约束条件

1≤n,m≤501 \le n,m \le 50;

输入输出样例

  • 输入#1

    3 4
    1S23
    4567
    89G1

    输出#1

    17
  • 输入#2

    1 11
    S134258976G

    输出#2

    20
  • 输入#3

    3 3
    S12
    4G7
    593

    输出#3

    -1

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

首页