在此挑战中,您必须显示给水气球所填充的水量的ASCII艺术形式:
| __||__ |
| / # #\ |
| |######| |
| |######| |
| |######| |
| |######| |
| |######| |
| \######/ |
| |
| |
+----------+
如何画气球
要显示大小气球n,请按照以下步骤操作(注意:每当使用除法符号(/)时,它将表示整数除法,向下取整):
绘制一个容器,该容器包含左右十个竖线(
|),-底部十个破折号()和+左下角和右下角的加号()。这使整个事情变成12x11,“内部”变成10x10。| | | | | | | | | | | | | | | | | | | | +----------+绘制两个垂直条(气球的开口),它们居中位于第一行的中间,并在两侧
n/2各有一个下划线(_)(对于此示例,n将为5):| __||__ | | | | | | | | | | | | | | | | | | | +----------+在此顶行(下方一行)周围画一个斜杠(
/)和一个反斜杠(\):| __||__ | | / \ | | | | | | | | | | | | | | | | | +----------+绘制一
n排等距的竖线,然后绘制一对(仍等距)反斜杠和斜杠的一行:| __||__ | | / \ | | | | | | | | | | | | | | | | | | | | | | \ / | | | | | +----------+用水“填充”气球,由井号(
#)表示。从最低的行开始,然后向上工作。如果一行未完全填充,则可以将井号放置在所需的任何位置(在下面的示例中,井号是随机放置的,但是如果需要,可以将其全部放在左侧)。| __||__ | | / # #\ | | |######| | | |######| | | |######| | | |######| | | |######| | | \######/ | | | | | +----------+
最大值n为7,最小值为0。
输入值
输入将是一个整数i,它是必须绘制的哈希标记(水)的数量。
它永远不会小于2或大于100。
输出量
输出应该是一个n包含i哈希标记(水的单位)的气球,这里n是可以容纳i水的单位的最小尺寸。由于i将始终为2或更大,因此n将始终为0或更大。
可以绘制气球的最大大小为n=7。如果尺寸7的气球无法容纳指定的水量,则气球弹出:
| |
| |
|## # ###|
|##########|
|##########|
|##########|
|##########|
|##########|
|##########|
|##########|
+----------+
(上面应该是输入i= 76 的输出。就像未弹出的气球一样,也可以根据需要安排第一行的六个额外水位。)
测试用例
当可以全部使用一个测试用例时,为什么要使用呢?
这是i2到100 的所有输入的动画GIF :

计分
这是code-golf,因此以字节为单位的最短代码获胜。