AT_past19_o.15パズル

通过率:0%

AC君温馨提醒

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

题目描述

称一个 4×44\times 4 的网格为好网格,当且仅当满足以下条件:

对于每个 11 到 1515 之间的整数(包含 11 和 1515),网格中恰好有一个格子写有该整数。
剩下的唯一一个格子没有写任何数。换句话说,恰好有且只有一个格子为空。

现给定两个不同的好网格 SS 和 TT。
这里,好网格 SS 由 1616 个整数 Si,jS_{i,j}(1≤i,j≤41\leq i,j\leq 4)给出。
如果 1≤Si,j≤151\leq S_{i,j}\leq 15,则表示第 ii 行第 jj 列的格子上写着 Si,jS_{i,j};
如果 Si,j=−1S_{i,j}=-1,则表示第 ii 行第 jj 列的格子为空。
同理,TT 也由 1616 个整数 Ti,jT_{i,j}(1≤i,j≤41\leq i,j\leq 4)给出。

你需要计算,从 SS 经过若干次如下操作,最少多少步能够变成 TT。
如果用 3030 次操作及以内(包括 3030 次)无法变为 TT(包括任意次数都无法变为 TT 的情形),则输出 −1-1。

  • 选择一个与空格相邻的格子,将该格子上的数移动到空格中,然后该格子变为空。

输入格式

输入为一行,从标准输入读取,格式如下:

S1,1 S1,2 S1,3 S1,4 S2,1 S2,2 S2,3 S2,4 S3,1 S3,2 S3,3 S3,4 S4,1 S4,2 S4,3 S4,4 T1,1 T1,2 T1,3 T1,4 T2,1 T2,2 T2,3 T2,4 T3,1 T3,2 T3,3 T3,4 T4,1 T4,2 T4,3 T4,4S_{1,1}\ S_{1,2}\ S_{1,3}\ S_{1,4}\ S_{2,1}\ S_{2,2}\ S_{2,3}\ S_{2,4}\ S_{3,1}\ S_{3,2}\ S_{3,3}\ S_{3,4}\ S_{4,1}\ S_{4,2}\ S_{4,3}\ S_{4,4}\ T_{1,1}\ T_{1,2}\ T_{1,3}\ T_{1,4}\ T_{2,1}\ T_{2,2}\ T_{2,3}\ T_{2,4}\ T_{3,1}\ T_{3,2}\ T_{3,3}\ T_{3,4}\ T_{4,1}\ T_{4,2}\ T_{4,3}\ T_{4,4}

输出格式

输出最少的操作次数,使得网格由 SS 变为 TT。
如果用 3030 次操作以内无法变为 TT,请输出 −1-1。

输入输出样例

  • 输入#1

    1 2 3 4
    5 6 7 8
    9 10 11 12
    13 14 15 -1
    1 2 3 4
    5 6 -1 8
    9 10 7 11
    13 14 15 12

    输出#1

    3
  • 输入#2

    -1 11 10 9
    1 12 15 8
    2 13 14 7
    3 4 5 6
    6 5 4 3
    7 12 15 2
    8 13 14 1
    9 10 11 -1

    输出#2

    -1
  • 输入#3

    1 12 11 10
    2 13 -1 9
    3 14 15 8
    4 5 6 7
    1 10 5 14
    2 11 6 15
    3 12 7 -1
    4 13 8 9

    输出#3

    30

说明/提示

样例解释 1

记 (i,j)(i,j) 表示网格中第 ii 行第 jj 列的格子。
在 SS 中,空格位于 (4,4)(4,4)。
可以通过以下三步操作将 SS 变为 TT:

  • 选择 (3,4)(3,4),将 1212 移动到 (4,4)(4,4),(3,4)(3,4) 变为空;
  • 选择 (3,3)(3,3),将 1111 移动到 (3,4)(3,4),(3,3)(3,3) 变为空;
  • 选择 (2,3)(2,3),将 77 移动到 (3,3)(3,3),(2,3)(2,3) 变为空。

另一方面,不能用两步或更少变为 TT,因此输出 33。

样例解释 2

无法在 3030 步以内变为 TT,所以输出 −1-1。

数据范围

  • −1≤Si,j,Ti,j≤15-1\leq S_{i,j},T_{i,j}\leq 15
  • Si,j,Ti,j≠0S_{i,j},T_{i,j}\neq 0
  • SS 和 TT 均为不同的好网格。
  • 所有输入均为整数。

由 ChatGPT 5 翻译

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

首页