#P56. [KSC004G] Boxes

[KSC004G] Boxes

版权声明

本题版权归 Long Long OJ 所有。

注意

本题有加强版 P80

题目描述

推箱子的规则相信大家都不陌生:

  • 地图上有若干个墙(地图的边界外也视为墙),若干个箱子,相同数量的目标,一个玩家;
  • 如果相邻的某一格是空格,则可以走上去;
  • 如果相邻的某一格是箱子,且这个方向的下一格是空位,则可以向那个方向走一步并将箱子推一格;
  • 行走和推箱子都是四方向的;
  • 当所有箱子都在目标上时,玩家胜利。

现在,请构造一个推箱子谜题,其大小限制为 20×20\mathbf{20\times 20}箱子只能有一个,并让最优解步数尽可能大(但不是无解)。

如果你的谜题最少可以在 114\color{red}\geq 114 次完成,则你的方案正确。

计分方式

如果你的答案中 OP* 之一的出现次数不是 11,或这个推箱子无解,或你的谜题最少可以在 114\color{red}114 次内(不包含 114\color{red}114 次),你将得到 00 分;否则你将得到 100100 分。

答案文本格式

本题为提交答案题。

你需要提交一个名叫 map.txt 的文本文件。

你的输出应当是一个 20×20\mathbf{20\times 20} 的矩阵。用 # 代表墙,. 代表空地,P 代表玩家的初始位置,* 代表箱子的初始位置,O 代表目标。(玩家和目标的初始位置不能重合。)

一个错误的的输出示例:

###..............###
##................##
#..................#
....................
...P................
....................
....................
.......*............
....................
....................
................O...
....................
....................
....................
....................
....................
....................
#..................#
##................##
###..............###