Вдохновленный этим ТАКИМ вопросом
В качестве входных данных вам будет дан непустой список целых чисел, где первое значение гарантированно будет ненулевым. Чтобы построить вывод, перейдите от начала списка, выводя каждое ненулевое значение по пути. Когда вы встретите ноль, вместо этого повторите значение, которое вы недавно добавили в вывод.
Вы можете написать программу или функцию и иметь ввод / вывод в любом удобном формате, который не кодирует дополнительную информацию, если это все еще упорядоченная последовательность целых чисел. При выводе из программы вы можете напечатать завершающий символ новой строки. За исключением этой завершающей новой строки, ваш вывод должен быть приемлемым вводом для вашего представления.
Самый короткий код в байтах побеждает.
Тестовые случаи
[1, 0, 2, 0, 7, 7, 7, 0, 5, 0, 0, 0, 9] -> [1, 1, 2, 2, 7, 7, 7, 7, 5, 5, 5, 5, 9]
[1, 0, 0, 0, 0, 0] -> [1, 1, 1, 1, 1, 1]
[-1, 0, 5, 0, 0, -7] -> [-1, -1, 5, 5, 5, -7]
[23, 0, 0, -42, 0, 0, 0] -> [23, 23, 23, -42, -42, -42, -42]
[1, 2, 3, 4] -> [1, 2, 3, 4]
[-1234] -> [-1234]
[0,0]
?
01
не является допустимым целым числом во входных данных Pyth, поэтому isaac не должен это учитывать. Другие ответы могут принимать входные данные, если они этого хотят, только до тех пор, пока они непротиворечивы (например, как ответ Исаака никогда не выдаст этот список в качестве выходных данных)