QOJ.ac

QOJ

时间限制: 10 s 内存限制: 256 MB 总分: 100

#10548. 智龙迷城

统计

最近,Little Apple 沉迷于一款名为“智龙迷城”(Puzzle & Dragons,简称 PAD)的游戏。 在这个游戏中,有一个 $5 \times 6$ 的网格,每个方格中都包含一个宝珠。宝珠共有 6 种类型:火(Fire)、水(Water)、木(Plant)、光(Light)、暗(Darkness)和心(Cure),分别用 F、W、P、L、D、C 表示。你可以查看下图以更直观地了解游戏。

游戏开始时,玩家可以选择一个宝珠并沿着路径移动它。路径上的第一个宝珠会移动到第二个宝珠的位置,第二个宝珠会移动到第三个宝珠的位置,依此类推。最后一个宝珠会移动到第一个宝珠的位置。你可以假设宝珠只能向上、向下、向左或向右移动。例如,如果拼图的一行最初是“FWPLDC”,那么火宝珠被选中并沿直线路径移动到最右端,这一行就会变成“WPLDCF”。

路径选择完成后,消除开始。如果同一行或同一列中有 3 个或更多相同类型的宝珠相连(称为“链”),它们将被消除,其上方的宝珠会掉落,消除后不会出现新的宝珠。此检查和消除过程将重复进行,直到不再存在链为止。

如果移动后有多个链被消除,它们将形成“连击”(combos)。需要注意的是,与某些具有类似系统的游戏不同,如果两个相同类型的链相邻或共享某些公共宝珠,它们将被计为 1 个连击。下图展示了这种情况的 2 个示例。

现在,你的任务是从所有长度不超过 9 的路径中选择一条能产生最多连击的路径。如果存在平局,选择能消除最多宝珠的路径(因为这会增加伤害和恢复的 HP)。如果仍然平局,选择路径长度最短的。如果仍有多个解,输出其中任意一个即可。

输入格式

输入的第一行给出了测试用例的数量 $T$ ($T \le 100$)。接下来是 $T$ 个测试用例。 每个测试用例包含 5 行,每行包含 6 个字符(F、W、P、L、D 或 C 中的一个),代表你需要解决的拼图。

输出格式

对于每个测试用例,首先打印一行“Case #x:”,其中 $x$ 是测试用例编号(从 1 开始)。 然后打印三行描述解法: 第一行包含 Combo:a Length:b,表示该解法可以达到的连击数为 $a$,路径长度为 $b$。 第二行包含两个整数 $x$ 和 $y$,表示位于 $(x, y)$ 的宝珠被选中(左上角为 $(1, 1)$,右下角为 $(5, 6)$)。 第三行包含一个长度不超过 9 的字符串,每个字符为 U、D、L 或 R,分别代表将宝珠向上、向下、向左或向右移动。

样例

输入 1

1
CFFLLW
CPDPDC
FLDWFD
LFCFCD
CDPLWL

输出 1

Case #1:
Combo:5 Length:9
43
RURURDLDD

说明

移动后,拼图变为:

CFFLLW
CPDPCD
FLDFCD
LFFWWD
CDPLCL

第一次消除(1 个连击,3 个宝珠):

CFFLL
CPDPC
FLDFC
LFFWWW
CDPLCL

第二次消除(1 个连击,3 个宝珠):

CFF
CPDLL
FLDPC
LFFFC
CDPLCL

第三次消除(2 个连击,6 个宝珠):

C
CFF
FPDL
LLDP
CDPLLL

第四次消除(1 个连击,3 个宝珠):

C
CFF
FPD
LLDL
CDPP

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.