Çeşitli kutuların bu ascii sanat diyagramına bir göz atın:
+--------------------------------------------------------------+
| |
| +-------------------------------+ +-------+ |
| | | | | |
| | | | | |
| | +----------------+ | | | |
| | | | | +-------+ |
| | | | | |
| | | | | +-------+ |
| | +----------------+ | | | |
| | | | | |
| | | | | |
| +-------------------------------+ +-------+ |
| |
+--------------------------------------------------------------+
Her bir kutu dikey parçalar ( |
) için boru karakterleri , yatay parçalar için çizgiler ( -
) ve köşeler için artılar ( +
) ile oluşturulmuştur.
Diyagram ayrıca diğer kutuların içindeki kutuları gösterir. Bir kutunun, bu kutunun katmanı içindeki kutu sayısını arayacağız . İşte yine her bir kutunun katmanı açıklamalı şema:
+--------------------------------------------------------------+
| |
| +-------------------------------+ +-------+ |
| | | | | |
| | | | 1 | |
| | +----------------+ | | | |
| | | | | 0 +-------+ |
| | | 2 | 1 | |
| | | | | +-------+ |
| | +----------------+ | | | |
| | | | 1 | |
| | | | | |
| +-------------------------------+ +-------+ |
| |
+--------------------------------------------------------------+
Programınız, üstteki girişe benzeyen bir kutu şemaya girecektir. Çıktı olarak, programınız kutu şemasını şöyle göstermelidir:
- Katman 0'daki kutu karakteri ile doldurulmalıdır
#
(Not: Katman 0'da sadece bir kutu olacaktır); - Katman 1'deki kutular karakter ile doldurulmalıdır
=
; - 2. kattaki kutular karakter ile doldurulmalıdır
-
; - 3. katmandaki kutular karakter ile doldurulmalıdır
.
; - 4. ve daha üst kattaki kutular doldurulmamalıdır.
Örnek girişin çıktısının nasıl olması gerektiği:
+--------------------------------------------------------------+
|##############################################################|
|###+-------------------------------+##########+-------+#######|
|###|===============================|##########|=======|#######|
|###|===============================|##########|=======|#######|
|###|=====+----------------+========|##########|=======|#######|
|###|=====|----------------|========|##########+-------+#######|
|###|=====|----------------|========|##########################|
|###|=====|----------------|========|##########+-------+#######|
|###|=====+----------------+========|##########|=======|#######|
|###|===============================|##########|=======|#######|
|###|===============================|##########|=======|#######|
|###+-------------------------------+##########+-------+#######|
|##############################################################|
+--------------------------------------------------------------+
İşte 3, 4 ve 5. katmanları gösteren başka bir giriş ve çıkış. Üstte birbirine çok yakın olan yatay çizgileri not edin. Bu durumlarda, herhangi bir karakteri doldurmak için yeterli alan yok.
+-----------------------------------------------------------------------+
| +--------------------------------------------------------------+ |
| | +-----------------------------------------------------+ | |
| | | +-----------------------------------------+ | | |
| | | | +---------------------------+ | | | |
| | | | | +-------------+ | | | | |
| | | | | | | | | | | |
| | | | | +-------------+ | | | | |
| | | | +---------------------------+ | | | |
| | | | | | | |
| | | +-----------------------------------------+ | | |
| | | | | |
| | | | | |
| | +-----------------------------------------------------+ | |
| | | |
| +--------------------------------------------------------------+ |
| |
| |
| |
+-----------------------------------------------------------------------+
Çıktı:
+-----------------------------------------------------------------------+
|#####+--------------------------------------------------------------+##|
|#####|======+-----------------------------------------------------+=|##|
|#####|======|---------+-----------------------------------------+-|=|##|
|#####|======|---------|...........+---------------------------+.|-|=|##|
|#####|======|---------|...........| +-------------+ |.|-|=|##|
|#####|======|---------|...........| | | |.|-|=|##|
|#####|======|---------|...........| +-------------+ |.|-|=|##|
|#####|======|---------|...........+---------------------------+.|-|=|##|
|#####|======|---------|.........................................|-|=|##|
|#####|======|---------+-----------------------------------------+-|=|##|
|#####|======|-----------------------------------------------------|=|##|
|#####|======|-----------------------------------------------------|=|##|
|#####|======+-----------------------------------------------------+=|##|
|#####|==============================================================|##|
|#####+--------------------------------------------------------------+##|
|#######################################################################|
|#######################################################################|
|#######################################################################|
+-----------------------------------------------------------------------+
Başka bir girdi, bu kez dikey çizgilerle de birbirine yakın:
+-------------+
|+-----------+|
|| ||
|| ||
|| ||
|+-----------+|
+-------------+
Çıktı:
+-------------+
|+-----------+|
||===========||
||===========||
||===========||
|+-----------+|
+-------------+
ek Notlar
- En dıştaki kutunun çevresinde boşluk olabilir.
- Kutular iç genişliğe veya yüksekliğe 0 sahip olamaz (bu yüzden her zaman içinde bir boşluk olurlar)
- Aynı katmandaki kutular birbirine dokunabilir.
import java.util.Scanner
ileimport java.util.*