Biorąc pod uwagę potencjalnie zagnieżdżoną, niepustą tablicę jednocyfrowych liczb całkowitych dodatnich (nie gwarantowanych niepowtarzalnych), wyprowadzaj reprezentację ASCII-art jako drzewo, używając znaków rysujących ramkę ┌ ┴ ┐ ─ │ ┬ ┼
. (Zostały one skopiowane z Code Page 437, ale możesz użyć dowolnej równoważnej reprezentacji).
Każda liczba całkowita tablicy powinna być liściem drzewa. Elementy tego samego poziomu głęboko w tablicy powinny znajdować się na tym samym poziomie drzewa. Wszystkie elementy powinny być oddzielone wystarczającą liczbą białych znaków, aby były wyraźne (to Ty decydujesz, jak szeroka, minimum jedna przestrzeń między nimi).
Na przykład podana tablica [[1, [2]], [3, [4, 5]]]
wyświetla następujące drzewo
┌─┴─┐
┌┴┐ ┌┴─┐
1 │ 3 ┌┴┐
2 4 5
Dla tablicy [1, 2, 3]
drzewo może wyglądać
┌─┼─┐
1 2 3
Ale tablica [[1, 2, 3]]
wyglądałaby tak
│
┌─┼─┐
1 2 3
Podczas gdy tablica [1, [1, [1, [1]]]]
może wyglądać
┌─┴┐
1 ┌┴─┐
1 ┌┴┐
1 │
1
Bardziej skomplikowanym przykładem [1, [[[2, 3], 4], 5]]
może być
┌┴───┐
1 ┌─┴┐
┌─┴┐ 5
┌┴┐ 4
2 3
lub kilka innych odmian.
- Dane wejściowe i wyjściowe można podać dowolną dogodną metodą .
- Możesz wydrukować go do STDOUT lub zwrócić jako wynik funkcji.
- Dopuszczalny jest pełny program lub funkcja.
- Dopuszczalna jest dowolna ilość obcych białych znaków, o ile znaki są odpowiednio ustawione w jednej linii.
- Standardowe luki są zabronione.
- To jest golf golfowy, więc obowiązują wszystkie zwykłe zasady gry w golfa, a wygrywa najkrótszy kod (w bajtach).
1
jest tablicą z 3 elementów: [2,3]
, 4
, i 5
. Ale 4 i 5 nie sąsiadują ze sobą.
[1, [[[2, 3]], [4], 5]]
.
[1,[[[2,3],4],5]]
może być interesującym przypadkiem testowym, ponieważ musi on sztucznie rozciągać się root, aby prawe poddrzewa nie kolidowało z lewym poddrzewem.