さまざまなボックスのこのアスキーアート図をご覧ください。
+--------------------------------------------------------------+
| |
| +-------------------------------+ +-------+ |
| | | | | |
| | | | | |
| | +----------------+ | | | |
| | | | | +-------+ |
| | | | | |
| | | | | +-------+ |
| | +----------------+ | | | |
| | | | | |
| | | | | |
| +-------------------------------+ +-------+ |
| |
+--------------------------------------------------------------+
各ボックスは、垂直部分のパイプ文字(|
)、水平部分のダッシュ(-
)、および角のプラス(+
)で形成されます。
この図は、他のボックス内のボックスも示しています。ボックスがそのボックスのlayer内に含まれるボックスの数を呼び出します。再び各ボックスのレイヤーに注釈を付けた図を示します。
+--------------------------------------------------------------+
| |
| +-------------------------------+ +-------+ |
| | | | | |
| | | | 1 | |
| | +----------------+ | | | |
| | | | | 0 +-------+ |
| | | 2 | 1 | |
| | | | | +-------+ |
| | +----------------+ | | | |
| | | | 1 | |
| | | | | |
| +-------------------------------+ +-------+ |
| |
+--------------------------------------------------------------+
あなたのプログラムは、入力として上の図に似たボックス図を取り込みます。出力として、プログラムは以下を含むボックスダイアグラムを出力する必要があります。
- レイヤー0のボックスには文字を入力する必要が
#
あります(注意:レイヤー0にはボックスが1つしかありません)。 - レイヤー1のボックスには文字を入力する必要があり
=
ます。 - レイヤー2のボックスには文字を入力する必要があり
-
ます。 - レイヤー3のボックスには文字を入力する必要があり
.
ます。 - レイヤー4以上のボックスは塗りつぶさないでください。
入力例の出力は次のようになります。
+--------------------------------------------------------------+
|##############################################################|
|###+-------------------------------+##########+-------+#######|
|###|===============================|##########|=======|#######|
|###|===============================|##########|=======|#######|
|###|=====+----------------+========|##########|=======|#######|
|###|=====|----------------|========|##########+-------+#######|
|###|=====|----------------|========|##########################|
|###|=====|----------------|========|##########+-------+#######|
|###|=====+----------------+========|##########|=======|#######|
|###|===============================|##########|=======|#######|
|###|===============================|##########|=======|#######|
|###+-------------------------------+##########+-------+#######|
|##############################################################|
+--------------------------------------------------------------+
次に、レイヤー3、4、および5を示す別の入力と出力を示します。上部の水平線が非常に接近していることに注意してください。これらの場合、そこに文字を入力するのに十分なスペースがありません。
+-----------------------------------------------------------------------+
| +--------------------------------------------------------------+ |
| | +-----------------------------------------------------+ | |
| | | +-----------------------------------------+ | | |
| | | | +---------------------------+ | | | |
| | | | | +-------------+ | | | | |
| | | | | | | | | | | |
| | | | | +-------------+ | | | | |
| | | | +---------------------------+ | | | |
| | | | | | | |
| | | +-----------------------------------------+ | | |
| | | | | |
| | | | | |
| | +-----------------------------------------------------+ | |
| | | |
| +--------------------------------------------------------------+ |
| |
| |
| |
+-----------------------------------------------------------------------+
出力:
+-----------------------------------------------------------------------+
|#####+--------------------------------------------------------------+##|
|#####|======+-----------------------------------------------------+=|##|
|#####|======|---------+-----------------------------------------+-|=|##|
|#####|======|---------|...........+---------------------------+.|-|=|##|
|#####|======|---------|...........| +-------------+ |.|-|=|##|
|#####|======|---------|...........| | | |.|-|=|##|
|#####|======|---------|...........| +-------------+ |.|-|=|##|
|#####|======|---------|...........+---------------------------+.|-|=|##|
|#####|======|---------|.........................................|-|=|##|
|#####|======|---------+-----------------------------------------+-|=|##|
|#####|======|-----------------------------------------------------|=|##|
|#####|======|-----------------------------------------------------|=|##|
|#####|======+-----------------------------------------------------+=|##|
|#####|==============================================================|##|
|#####+--------------------------------------------------------------+##|
|#######################################################################|
|#######################################################################|
|#######################################################################|
+-----------------------------------------------------------------------+
別の入力、今回は垂直線も一緒に近いもの:
+-------------+
|+-----------+|
|| ||
|| ||
|| ||
|+-----------+|
+-------------+
出力:
+-------------+
|+-----------+|
||===========||
||===========||
||===========||
|+-----------+|
+-------------+
その他の注意事項
- 一番外側のボックスの周りに空白があります。
- ボックスの内部の幅または高さを0にすることはできません(したがって、ボックス内には常にスペースが入ります)
- 同じレイヤー上のボックスは互いに接触できます。
import java.util.Scanner
てimport java.util.*