다양한 상자 의이 아스키 아트 다이어그램을 살펴보십시오.
+--------------------------------------------------------------+
| |
| +-------------------------------+ +-------+ |
| | | | | |
| | | | | |
| | +----------------+ | | | |
| | | | | +-------+ |
| | | | | |
| | | | | +-------+ |
| | +----------------+ | | | |
| | | | | |
| | | | | |
| +-------------------------------+ +-------+ |
| |
+--------------------------------------------------------------+
각 상자에는 세로 부분 ( |
)에 파이프 문자 , 가로 부분에 대시 ( -
) 및 모서리 ( +
)에 더하기 기호가 있습니다.
다이어그램에는 다른 상자 안의 상자도 표시됩니다. 상자가 해당 상자의 레이어에 포함 된 상자 수를 호출합니다 . 다음은 각 상자의 레이어에 주석이 달린 다이어그램입니다.
+--------------------------------------------------------------+
| |
| +-------------------------------+ +-------+ |
| | | | | |
| | | | 1 | |
| | +----------------+ | | | |
| | | | | 0 +-------+ |
| | | 2 | 1 | |
| | | | | +-------+ |
| | +----------------+ | | | |
| | | | 1 | |
| | | | | |
| +-------------------------------+ +-------+ |
| |
+--------------------------------------------------------------+
프로그램은 입력으로 맨 위에있는 것과 유사한 상자 다이어그램을 가져옵니다. 출력으로 프로그램은 다음과 같이 상자 다이어그램을 출력해야합니다.
- 레이어 0의 상자는 문자로 채워 져야합니다
#
(NB : 레이어 0에는 상자가 하나만있을 것입니다). - 레이어 1의 상자는 문자로 채워 져야합니다
=
. - 레이어 2의 상자는 문자로 채워 져야합니다
-
. - 레이어 3의 상자는 문자로 채워 져야합니다
.
. - 레이어 4 이상의 상자는 채우지 않아야합니다.
예제 입력 결과는 다음과 같습니다.
+--------------------------------------------------------------+
|##############################################################|
|###+-------------------------------+##########+-------+#######|
|###|===============================|##########|=======|#######|
|###|===============================|##########|=======|#######|
|###|=====+----------------+========|##########|=======|#######|
|###|=====|----------------|========|##########+-------+#######|
|###|=====|----------------|========|##########################|
|###|=====|----------------|========|##########+-------+#######|
|###|=====+----------------+========|##########|=======|#######|
|###|===============================|##########|=======|#######|
|###|===============================|##########|=======|#######|
|###+-------------------------------+##########+-------+#######|
|##############################################################|
+--------------------------------------------------------------+
여기에 레이어 3, 4 및 5를 보여주는 또 다른 입력 및 출력이 있습니다. 맨 위에있는 가로 선은 서로 매우 가깝습니다. 이 경우 문자를 채울 공간이 충분하지 않습니다.
+-----------------------------------------------------------------------+
| +--------------------------------------------------------------+ |
| | +-----------------------------------------------------+ | |
| | | +-----------------------------------------+ | | |
| | | | +---------------------------+ | | | |
| | | | | +-------------+ | | | | |
| | | | | | | | | | | |
| | | | | +-------------+ | | | | |
| | | | +---------------------------+ | | | |
| | | | | | | |
| | | +-----------------------------------------+ | | |
| | | | | |
| | | | | |
| | +-----------------------------------------------------+ | |
| | | |
| +--------------------------------------------------------------+ |
| |
| |
| |
+-----------------------------------------------------------------------+
출력 :
+-----------------------------------------------------------------------+
|#####+--------------------------------------------------------------+##|
|#####|======+-----------------------------------------------------+=|##|
|#####|======|---------+-----------------------------------------+-|=|##|
|#####|======|---------|...........+---------------------------+.|-|=|##|
|#####|======|---------|...........| +-------------+ |.|-|=|##|
|#####|======|---------|...........| | | |.|-|=|##|
|#####|======|---------|...........| +-------------+ |.|-|=|##|
|#####|======|---------|...........+---------------------------+.|-|=|##|
|#####|======|---------|.........................................|-|=|##|
|#####|======|---------+-----------------------------------------+-|=|##|
|#####|======|-----------------------------------------------------|=|##|
|#####|======|-----------------------------------------------------|=|##|
|#####|======+-----------------------------------------------------+=|##|
|#####|==============================================================|##|
|#####+--------------------------------------------------------------+##|
|#######################################################################|
|#######################################################################|
|#######################################################################|
+-----------------------------------------------------------------------+
또 다른 입력, 이번에는 수직선이 서로 가깝습니다.
+-------------+
|+-----------+|
|| ||
|| ||
|| ||
|+-----------+|
+-------------+
출력 :
+-------------+
|+-----------+|
||===========||
||===========||
||===========||
|+-----------+|
+-------------+
추가 사항
- 가장 바깥 쪽 상자 주위에 공백이있을 수 있습니다.
- 상자의 내부 너비 나 높이는 0이 될 수 없습니다 (따라서 상자 안에는 항상 공간이 있습니다)
- 같은 레이어의 상자가 서로 닿을 수 있습니다.
import java.util.Scanner
와import java.util.*