Подивіться на цю арт-діаграму ascii різних коробок:
+--------------------------------------------------------------+
| |
| +-------------------------------+ +-------+ |
| | | | | |
| | | | | |
| | +----------------+ | | | |
| | | | | +-------+ |
| | | | | |
| | | | | +-------+ |
| | +----------------+ | | | |
| | | | | |
| | | | | |
| +-------------------------------+ +-------+ |
| |
+--------------------------------------------------------------+
Кожен ящик формується символами труби для вертикальних частин ( |
), тире для горизонтальних частин ( -
) та плюсами для кутів ( +
).
Діаграма також показує вікна всередині інших коробок. Ми будемо називати кількість скриньок, які міститься в шарі цього шару . Ось діаграма ще раз із зазначеним шаром кожного поля:
+--------------------------------------------------------------+
| |
| +-------------------------------+ +-------+ |
| | | | | |
| | | | 1 | |
| | +----------------+ | | | |
| | | | | 0 +-------+ |
| | | 2 | 1 | |
| | | | | +-------+ |
| | +----------------+ | | | |
| | | | 1 | |
| | | | | |
| +-------------------------------+ +-------+ |
| |
+--------------------------------------------------------------+
Ваша програма візьме в діаграмі вікна подібну до тієї, що знаходиться вгорі. Як вихід, ваша програма повинна вивести віконну діаграму з:
- Поле на шарі 0 має бути заповнене символом
#
(Примітка. На шарі 0 завжди буде лише одне поле); - Коробки на шарі 1 повинні бути заповнені символом
=
; - Коробки на шарі 2 повинні бути заповнені символом
-
; - Коробки на шарі 3 повинні бути заповнені символом
.
; - Ящики на шарі 4 і вище не повинні заповнюватися.
Ось як повинен виглядати висновок прикладу входу:
+--------------------------------------------------------------+
|##############################################################|
|###+-------------------------------+##########+-------+#######|
|###|===============================|##########|=======|#######|
|###|===============================|##########|=======|#######|
|###|=====+----------------+========|##########|=======|#######|
|###|=====|----------------|========|##########+-------+#######|
|###|=====|----------------|========|##########################|
|###|=====|----------------|========|##########+-------+#######|
|###|=====+----------------+========|##########|=======|#######|
|###|===============================|##########|=======|#######|
|###|===============================|##########|=======|#######|
|###+-------------------------------+##########+-------+#######|
|##############################################################|
+--------------------------------------------------------------+
Ось ще один вхід і висновок, що показує шари 3, 4 і 5. Відзначте горизонтальні лінії вгорі, які дуже близькі між собою. У цих випадках недостатньо місця для заповнення будь-яких символів.
+-----------------------------------------------------------------------+
| +--------------------------------------------------------------+ |
| | +-----------------------------------------------------+ | |
| | | +-----------------------------------------+ | | |
| | | | +---------------------------+ | | | |
| | | | | +-------------+ | | | | |
| | | | | | | | | | | |
| | | | | +-------------+ | | | | |
| | | | +---------------------------+ | | | |
| | | | | | | |
| | | +-----------------------------------------+ | | |
| | | | | |
| | | | | |
| | +-----------------------------------------------------+ | |
| | | |
| +--------------------------------------------------------------+ |
| |
| |
| |
+-----------------------------------------------------------------------+
Вихід:
+-----------------------------------------------------------------------+
|#####+--------------------------------------------------------------+##|
|#####|======+-----------------------------------------------------+=|##|
|#####|======|---------+-----------------------------------------+-|=|##|
|#####|======|---------|...........+---------------------------+.|-|=|##|
|#####|======|---------|...........| +-------------+ |.|-|=|##|
|#####|======|---------|...........| | | |.|-|=|##|
|#####|======|---------|...........| +-------------+ |.|-|=|##|
|#####|======|---------|...........+---------------------------+.|-|=|##|
|#####|======|---------|.........................................|-|=|##|
|#####|======|---------+-----------------------------------------+-|=|##|
|#####|======|-----------------------------------------------------|=|##|
|#####|======|-----------------------------------------------------|=|##|
|#####|======+-----------------------------------------------------+=|##|
|#####|==============================================================|##|
|#####+--------------------------------------------------------------+##|
|#######################################################################|
|#######################################################################|
|#######################################################################|
+-----------------------------------------------------------------------+
Ще один вхід, на цей раз з вертикальними лініями, також близько:
+-------------+
|+-----------+|
|| ||
|| ||
|| ||
|+-----------+|
+-------------+
Вихід:
+-------------+
|+-----------+|
||===========||
||===========||
||===========||
|+-----------+|
+-------------+
додаткові нотатки
- Навколо зовнішньої коробки може бути пробіл.
- Коробки не можуть мати внутрішню ширину або висоту 0 (тому у них завжди буде місця)
- Коробки на одному шарі можуть торкатися один одного.
import java.util.Scanner
наimport java.util.*