一个房间可以由相连的矩形组成,例如L形房间。这样的房间可以通过描述每个矩形尺寸的尺寸列表来描述。
假设您有两个输入列表。第一个包含彼此垂直垂直堆叠的矩形的宽度。第二个包含矩形的高度。
例如,输入[4 6][3 2]
将是6 x 2矩形顶部的4 x 3矩形。下图显示了此形状。请注意,墙壁被认为是“薄”的,因此,墙壁之间的空间取决于输入。
[4 6][3 2]
____
| |
| |
| |_
| |
|______|
面临的挑战是:将尺寸列表作为输入,并以ASCII艺术形式输出房间的形状。格式必须与示例图中的一样:
- 所有水平墙均使用下划线显示
- 所有垂直墙均使用条形图显示
- 矩形连接处不得有墙
- 左墙是直的
- 有关更多详细信息,请查看测试用例
您可以做出的假设:
- 所有尺寸均在范围内
[1 ... 20]
- 所有的卧式尺寸为偶数
- 矩形数将在范围内
[1 ... 10]
- 仅给出有效输入
- 可选的输入格式(您可以确定输入尺寸的顺序,请在答案中指定)。
测试用例:
[2][1]
__
|__|
---
[4][2]
____
| |
|____|
---
[2 6 2 4][2 2 1 3]
__
| |
| |___
| |
| ___|
| |_
| |
| |
|____|
---
[2 14 6 8 4 18 2 10 4 2][1 2 3 1 2 1 1 1 2 1]
__
| |___________
| |
| _______|
| |
| |
| |_
| ___|
| |
| |_____________
| _______________|
| |______
| ____|
| |
| _|
|__|
是的,没关系。:-)
—
Stewie Griffin
谢谢。原来,我可能不需要撤销它们,只需交换即可。
—
daavko '16
[2 14 6 8 4 18 2 10 4 2][1 2 3 1 2 1 1 1 2 1]
->(交换和反向)->我的输入格式:[1 2 1 1 1 2 1 3 2 1][2 4 10 2 18 4 8 6 14 2]