Учитывая три целых числа> = 2, создайте куб ASCII в ортогональной (кабинетной) проекции. Три целых числа представляют высоту, ширину и глубину (измеряются видимыми символами), включая углы. Углы должны быть «о» или «+», свободный выбор.
ш: 10, ч: 5, д: 4 Таким образом, получается:
o--------o
/ /|
/ / |
o--------o |
| | o
| | /
| |/
o--------o
Теперь, чтобы сделать это немного сложнее, все лица могут быть либо сплошными, прозрачными или отсутствующими. Мы заказываем лица так:
o--------o
/ /|
/ 2 / |
o--------o 3|
| | o
| 1 | /
| |/
o--------o
---
|2|
-------
|5|1|3|
-------
|4|
---
|6|
---
И предоставьте список токенов, S, T или M. Оригинальный пример таков:
w 10
h 5
d 4
S S S S S S
o--------o
/ /|
/ / |
o--------o |
| | o
| | /
| |/
o--------o
Если одно лицо прозрачно, мы можем видеть все, что за ним:
T S S S S S
o--------o
/ /|
/ / |
o--------o |
| o-----| o
| / | /
|/ |/
o--------o
T T T T T T
o--------o
/| /|
/ | / |
o--------o |
| o-----|--o
| / | /
|/ |/
o--------o
Для пар отсутствующих граней смежные края или углы больше не видны:
M M S S S S
o--------o
/| /|
/ | / |
o | o |
| o-----| o
| / | /
|/ |/
o--------o
M M S S M S
o--------o
| /|
| / |
| o |
o-----| o
/ | /
/ |/
o--------o
Код гольф, самый короткий код выигрывает! Конечные пробелы и переводы строк в порядке, вы можете выбрать метод ввода и порядок ввода.
you're free to choose input method and input order
. И поскольку ничто не говорит иначе, любой из методов ввода / вывода по умолчанию может использоваться.