При вводе списка чисел в формате сокращенно увеличивающейся последовательности целых чисел выведите последовательность полностью.
Сокращенно увеличивающий формат последовательности целых чисел работает, находя каждое число n с меньшим количеством цифр, чем число, предшествующее ему, m . С d в качестве количества цифр в n , последние d цифр m заменяются всеми цифрами n . Вот пример ввода:
123 45 6 7 89 200
Применяя правило замены, мы сначала превращаем 45 в 145, потому что 45 <123:
123 145 6 7 89 200
Повторно применяя то же правило, это становится:
123 145 146 7 89 200
123 145 146 147 89 200
123 145 146 147 189 200
Последовательность теперь отсортирована (нет чисел, к которым применяется правило), так что это окончательный результат.
Вы можете предположить, что
сокращенная запись всегда используется, когда это возможно. Например, ввод будет
12 3, никогда12 13.числа никогда не будут уменьшаться при сохранении того же количества цифр. Например, ввода никогда не будет
333 222.применение правила сокращения никогда не приведет к числу, которое будет все еще меньше, чем предыдущее число в последовательности. Например, ввода никогда не будет
123 12.числа всегда будут положительными целыми числами и никогда не будут содержать начальные 0 (если используется формат строки).
полная расширенная последовательность никогда не будет содержать повторяющихся чисел. (Тем не менее, сокращенная последовательность может быть; например,
10 1 20 1->10 11 20 21.)на входе будет хотя бы одно число.
Ввод и вывод могут быть либо списками / массивами чисел / строк, либо одной строкой с элементами, разделенными любой нецифровой цифрой.
Поскольку это код-гольф , победит самый короткий код в байтах.
Контрольные примеры с вводом и выводом на чередующихся строках:
1 2 3 10 1 2 20 5 100 200 10 3 5 26 9 99 999 9999
1 2 3 10 11 12 20 25 100 200 210 213 215 226 229 299 999 9999
223 1184 334 441 5 927 2073 589 3022 82 390 5 9
223 1184 1334 1441 1445 1927 2073 2589 3022 3082 3390 3395 3399
5 10 5 20 5 30 5 40 5 50 5
5 10 15 20 25 30 35 40 45 50 55
7 8 9 70 80 90 700 800 900 7000 8000 9000
7 8 9 70 80 90 700 800 900 7000 8000 9000
42
42