Вызов
Вам будет дано положительное целое число в n
качестве входных данных. Выход должен быть похожим на пирамиду песочницей, построенной по правилам, указанным ниже:
- Каждое целое число «падает» вниз от одной и той же начальной точки, как песок, падающий в конусообразную форму.
- Числа, превышающие число непосредственно под ним, когда оно попадает в песочную кучу, упадут вправо, если это возможно.
- Числа, меньшие, чем число, расположенное непосредственно под ним при попадании в песочную кучу, упадут влево, если это возможно.
- Числа, равные числу, находящемуся непосредственно под ним при попадании в песочную кучу, останутся на месте.
- Числа могут упасть влево / вправо, если они могут двигаться вниз и влево / вправо соответственно. То есть, если уже есть число ниже и влево / вправо, в зависимости от направления, текущее уменьшающееся число не перемещается.
- Число будет продолжать падать в песочную кучу до тех пор, пока оно не будет перемещено в следующую позицию или не упадет на пол.
Примечания
Первоначальная проверка сравнения применяется только к первому обнаруженному целому числу, а не к каждому последующему столкновению, поскольку оно падает в кучу.
Конечные пробелы в порядке, а новые пробелы - нет.
Никаких пробелов или новых линий, кроме случаев, когда это необходимо для сохранения структуры песочной кучи.
Вы можете написать полную программу или функцию.
Вы можете предположить, что ввод будет содержать только некоторую комбинацию [0-9]
.
Это код-гольф , самый короткий код в байтах будет отмечен победителем в мартовские иды
Примеры
1
1
12345
35
124
54321
13
245
555444333222111
2
2
2
135
1345
13445
111222333444555
4
4
4
135
1235
12235
7313623030872935273465247457435345345350
3
3
3
3
34
355
3644
239475
201277445
020373685575
555444333222111
это ошибка, что третий4
упадет левее первого4
?