Вдохновленный Показать цепь маленьких гор с нечетным числом на вершине! по @sygmei .
Зачем цепочка гор, если у вас может быть одна массивная?
Создайте программу, которая принимает входной номер и печатает гору с каждым нечетным числом вплоть до входного номера.
(Где «юго-запад» означает directly below and to the left
, а «юго-восток» означает directly below and to the right
)
У каждого числа будет /
юго-запад от него и \
юго-восток. Он начинается 1
сверху, а следующий номер пойдет на юго-запад от /
или на юго-восток от \
. Следующее число будет идти в строке, ближайшей к вершине и слева от максимально возможного.
Для многозначного номера, только 1-я цифра должна быть в правильном месте, а другие цифры должны быть сразу после, и только первая цифра должна иметь \
и /
выходить из нее.
Гора до 1 или 2 это просто:
1
/ \
Гора до 3 или 4 это просто:
1
/ \
3
/ \
Для 25 или 26:
1
/ \
3 5
/ \ / \
7 9 11
/ \ / \ / \
13 15 17 19
/ \ / \ / \ / \
21 23 25
/ \ / \ / \
Последние две строки, где ввод 121:
111 113 115 117 119 121
/ \ / \ / \ / \ / \ / \
И последние две строки, где ввод 1019:
993 995 997 999 1001100310051007100910111013101510171019
/ \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \
Вы можете предположить, что ввод будет больше 0 и меньше 10001 (исключая).
Конечные пробелы в порядке, а дополнительные начальные пробелы в порядке, если они одинаковы во всех строках.
Это код-гольф , поэтому выигрывает самая короткая программа в байтах.
Ответ на этот вопрос можно найти здесь (в Python на repl.it), если вам нужно больше тестов.