Biorąc pod uwagę liczbę n , wygeneruj pierwsze n kolumn tego wzoru:
#
# #
# # # #
# # # # # # # #
# # # # # # # # # # # # # # # #
################################ ...
Wysokość kolumny przy (1-indeksowanym) n jest liczbą końcowych 0bitów w reprezentacji binarnej n plus jeden. W rezultacie w dolnej warstwie jest wypełniona każda kolumna, druga warstwa co druga kolumna, trzecia warstwa co czwarta kolumna itp.
Zasady
- Możesz wprowadzać i wyprowadzać dowolną standardową metodą.
- Możesz założyć, że wejście jest liczbą całkowitą od 1 do 999 włącznie.
- Dane wyjściowe mogą zawierać dowolną ilość białych znaków, o ile wzór jest nienaruszony.
- Wzór musi być indeksowany 1 i mieć ten sam format, jak pokazano tutaj.
- Możesz użyć dowolnego pojedynczego znaku spacji zamiast
#, ale nie możesz zmienić znaku spacji.
Przypadki testowe
1
#
2
#
##
3
#
###
4
#
# #
####
5
#
# #
#####
7
#
# # #
#######
32
#
# #
# # # #
# # # # # # # #
# # # # # # # # # # # # # # # #
################################
Kilka większych przypadków testowych można znaleźć tutaj .
Punktacja
To jest golf golfowy , więc wygrywa najkrótszy kod w bajtach w każdym języku.
#?
