#P14714. [ICPC 2023 Tehran R] Rolling-Dice Puzzle
[ICPC 2023 Tehran R] Rolling-Dice Puzzle
Description
:::align{center}
:::
Sarina 和她的兄弟 Soroush 正在玩掷骰子游戏。游戏在一个 的棋盘上进行。初始时,Soroush 将一个标准骰子放在棋盘的一个格子中。放置方式是:数字 朝上,数字 朝北(上),数字 朝西(左)。在标准骰子中, 与 相对, 与 相对, 与 相对。此外,他选择了一些格子并在其中任意写入了 到 之间的整数。
之后,Sarina 需要通过多次滚动骰子在棋盘上移动它。滚动的定义如下:假设两个相邻的格子 和 共享一条边 ,且骰子位于格子 上;骰子可以围绕其与 相接的边滚动,从而从 移动到 。例如,考虑骰子的起始位置。如果骰子围绕东、西、北、南边滚动,滚动后朝上一面的数字将分别为 、、 和 。
每当 Sarina 将骰子移动到一个写有数字的格子,且骰子朝上一面的数字与该格子中的数字匹配时,她将获得一分。注意,Sarina 每个格子最多只能获得一分。游戏并不那么简单!一些格子中有障碍物,无法将骰子移动到有障碍物的格子中。你的任务是找出 Sarina 可以获得的最大分数。
Input Format
输入的第一行包含两个整数 和 (),分别表示棋盘的行数和列数。接下来的 行每行包含 个字符,描述棋盘。空单元格用 "." 表示,障碍物用 "x" 表示。骰子的起始位置用 "s" 表示,被选中的单元格用其中写入的整数( 到 )表示。保证输入中只有一个 "s"。
Output Format
输出一行,包含 Sarina 可以获得的最大分数。
3 4
.23s
4.2x
xx.1
5
2 2
4s
22
1
Hint
翻译由 DeepSeek V3 完成
京公网安备 11011102002149号