QOJ.ac

QOJ

时间限制: 8 s 内存限制: 1024 MB 总分: 100 可 Hack ✓

#17528. 滚动瑞克

统计

桌面上有一张宽为 $W$、高为 $H$ 的矩形纸张,纸上放置着一个宽为 $A$、高为 $B$、深为 $C$ 的长方体 Rick。初始时,Rick 底面的左上角与纸张的左上角重合。

我们可以将 Rick 向右或向下翻滚。翻滚时,以 Rick 底面的右侧或下侧边为轴进行旋转。由于 Rick 的所有表面都沾有未干的油漆,因此 Rick 接触到的地面区域会沾上油漆。为了保持桌面整洁,Rick 在翻滚过程中不得超出纸张范围。

请通过适当的翻滚,将 Rick 移动到其底面的右下角与纸张的右下角重合的位置,并使纸张上沾有油漆的区域面积最大化。

输入格式

第一行包含 Rick 的尺寸 $A, B, C$ 以及网格纸的尺寸 $W, H$,各数值之间用空格隔开。($1 \leq A, B, C, W, H \leq 1\,000\,000$; $A < W$; $B < H$)

所有输入值均为整数。

输出格式

如果无法将 Rick 移动到右下角,则第一行仅输出 -1

否则,第一行输出纸张上沾有油漆区域的最大面积,第二行输出 Rick 的翻滚路径,由 RD 组成的字符串表示。第 $i$ 个字符为 R 表示第 $i$ 次向右翻滚,为 D 表示向下翻滚。

若存在多种可行方案,输出其中任意一种即可。

样例

输入格式 1

1 1 1 24 10

输出格式 1

33
RRRRRRRRRRRRRRRRRRRRRRRDDDDDDDDD

输入格式 2

3 4 5 6 7

输出格式 2

-1

输入格式 3

3 4 5 12 12

输出格式 3

79
RDRD

说明

下图展示了第 3 个样例中 Rick 的翻滚过程。

在该样例中,Rick 也可以按照下、右、下、右的顺序翻滚,但此时沾有油漆的区域面积为 $74$,并非最优解。

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.