#P1972. Bloxorz II
Bloxorz II
题目描述
由于大灾难的发生,科学院已经连续有很多年没有新生了(这个世界中的科学院其实也有大学的职能)。于是这一年的新生测试就有里程碑一样的意义。作为科学院的顶级信息专家,这一任务自然落到了你的头上。思来想去,你决定出这样的一个题,那就是 Bloxorz 游戏。
所谓 Bloxorz 游戏,如下图所示,就是在一个平台上有一个作为目标的 的洞,以及一个大小为 的长方体。长方体可以沿着边在平台上滚动,但是不能与平台失去接触面。
下面这张图反映了上图中的长方体向右滚动之后的局面。
而下面这张图就反映了向前方滚动之后的局面。
任务就是让长方体进入目标洞。当然,这时长方体应该是竖立的。
滚动一次叫做一步。你的题目就是对于一个给定的局面,计算至少需要多少步才能把长方体滚到目标洞里面去。自然,对于新生来说这个题是一个很难的题。
被你虐了的新生感到很不服气。于是他们想了一个更难的题来让你做:
有一个无限大的平台以及一个建立在上面的坐标系。现在目标洞在 处,长方体的位置和状态(竖立、与 轴平行还是与 轴平行)给定,计算至少需要多少步才能使长方体进洞。作为顶级信息专家 ... 这当然难不倒你了。
输入格式
输入文件包含多组测试数据。
每组测试数据在一行内,格式为 C x y
。其中 为一个字母, 和 是两个整数。这表示长方体覆盖住了平台上的格子 ,且其状态为 。
- 若 为字母
U
,表明长方体是竖立的。 - 若 为字母
V
,表明长方体与 轴平行,且其覆盖的另一个格子为 。 - 若 为字母
H
,表明长方体与 轴平行,且其覆盖的另一个格子为 。 输入文件以EOF
结束。
输出格式
对于每组测试数据,在单独的一行内输出答案。
U 0 0
H 0 0
V 1 0
0
4
1
数据范围/提示
对于 的数据,。
对于 的数据,,输入数据不超过 组。