Для будь-якого натурального числа k
, нехай d(k)
позначає число дільників k
. Наприклад, d(6)
це 4
, так як 6
має 4
дільників (а саме 1
, 2
, 3
, 6
).
Враховуючи додатне ціле число N
, відобразіть "горизонт" в арт-аркуші ASCII, використовуючи фіксований символ, таким чином, щоб висота "будівлі", розташованої в горизонтальному положенні, k
була d(k)
для k = 1, ..., N
. Дивіться тестові приклади нижче.
Правила
- Будь-який символ без пробілу може послідовно використовуватися, не обов'язково,
#
як показано в тестових випадках. - Алгоритм теоретично повинен працювати для довільно високого рівня
N
. На практиці це прийнятно, якщо програма обмежена часом, пам’яттю, розміром типу даних або розміром екрана. - Допускаються горизонтально або вертикально провідні або кінцеві проміжки або нові рядки.
- Введення та вихід можна приймати будь-якими розумними засобами .
- Програми або функції дозволені на будь- якій мові програмування . Стандартні лазівки заборонені.
- Виграє найкоротший код у байтах.
Тестові справи
N = 10
:
# # #
# # ###
#########
##########
N = 50
:
#
# #
# # # # # #
# # # # # #
# # # # # # # # # # ## # #
# # # # # # # # # # # ## # #
# # # # ### # ### # ### # ##### ### # ### # #
# # ### # ### # ### ##### # ##### ### # ### ###
#################################################
##################################################
N = 200
:
#
#
# # #
# # # #
# # # # #
# # # # #
# # # # # # # # # # # # # # # # # # #
# # # # # # # # # # # # # # # # # # #
# # # # # # # # # # # # # # # # # # # # # # # #
# # # # # # # # # # # # # # # # # # # # # # # # # # #
# # # # # # # # # # # # # # # # # # # # ## # # # # # # # # # ## # # # # # # # # # # # # # # # # # # ## # ## # #
# # # # # # # # # # # # # # # # # # # # # ## # # # # # # # # # ## # # # # # # # # # # # # # # # # # # ## # ## # #
# # # # # # # # # # ## # # # # # # ## # # # # ## # # # # # # # ### # ## # # # # ## # # # # # # ## # # # ## # ### # # # ## # ### ### # # # # ### # ## # #
# # # # # # # # # # # ## # # # # # # ## # # # # ## # ## # # # # # ### # ## # # # # ## # # # # # # ## # # # ## # ### # # # ## # ### ### # # # # ### # ## # #
# # # # ### # ### # ### # ##### ### # ### # ### ##### # ##### ### # ##### ### ##### ####### ### # ### # ### ####### ##### ### ##### # ######### # ##### ##### ### # ### ##### # ######### # ### # #
# # ### # ### # ### ##### # ##### ### # ### ##### ##### # ##### ### # ##### ### ##### ####### ### # ### # ### ############# ### ##### # ######### # ##### ##### ### ##### ##### # ######### # ### # #
#######################################################################################################################################################################################################
########################################################################################################################################################################################################