Biorąc pod uwagę tablicę dodatnich liczb całkowitych w podstawie 10, gdzie n > 0
wypisuje ich reprezentację ściany binarnej.
Jak to działa?
- Konwertuj każdą liczbę na reprezentację binarną.
- Wypełnij reprezentację zerami wiodącymi do długości najdłuższego, tj.
1, 2
->1, 10
->01, 10
. - Utwórz ścianę, w której
1
s są cegłami, a0
s brakującymi cegłami.
Ściana to blok znaków, w którym dowolny znak do wydrukowania reprezentuje cegłę, a spacja ( 32
) oznacza brakującą cegłę. Możesz wybrać dowolną postać dla klocka, nie musi ona być wyraźna na całej ścianie, o ile nie jest to biała postać. Brakująca postać z cegły musi być spacją. W poniższym przykładzie użyłem *
cegieł.
Przykład
Wkład:
[ 15, 7, 13, 11 ]
[ 1111, 111, 1101, 1011 ]
[ 1111, 0111, 1101, 1011 ]
Wydajność:
**** *** ** * * **
Zasady
- Dane należy wprowadzić w bazie 10, jeśli twój język akceptuje inne bazy, nie możesz ich używać.
- Wiodące i końcowe nowe linie są dozwolone.
- Dane wejściowe można traktować jako listę liczb całkowitych, oddzielnych argumentów lub dowolnego rozsądnego formatu.
- Dane wyjściowe mogą być w dowolnym rozsądnym formacie: nowy ciąg oddzielony od linii, tablica linii, tablica 2d itp.
- Standardowe luki są niedozwolone.
Przypadki testowe
Zauważ, że w pierwszym przypadku testowym wszystkie warstwy mają pustą cegłę na końcu.
[ 14, 4, 6, 2 ]
***
*
**
*
[ 1, 2, 4, 8, 16 ]
*
*
*
*
*
[ 15, 11, 15, 15 ]
****
* **
****
****
[ 11, 10, 9, 8 ]
* **
* *
* *
*
To jest golf golfowy, więc wygrywa najkrótszy kod!
[[1, " ", 1, " "], ...]