Вы должны написать программу или функцию, которая, учитывая список положительных целых чисел, умножает каждый элемент на наименьшее положительное целое число, чтобы создать строго увеличивающийся список.
Например, если вход
5 4 12 1 3
умножения будут
5*1=5 4*2=8 12*1=12 1*13=13 3*5=15
и вывод будет увеличивающимся списком
5 8 12 13 15
вход
- Список натуральных чисел, содержащий хотя бы 1 элемент
Выход
- Список целых положительных чисел
Примеры
9 => 9
1 2 => 1 2
2 1 => 2 3
7 3 => 7 9
1 1 1 1 => 1 2 3 4
5 4 12 1 3 => 5 8 12 13 15
3 3 3 8 16 => 3 6 9 16 32
6 5 4 3 2 1 => 6 10 12 15 16 17
9 4 6 6 5 78 12 88 => 9 12 18 24 25 78 84 88
8 9 41 5 12 3 5 6 => 8 9 41 45 48 51 55 60
15 8 12 47 22 15 4 66 72 15 3 4 => 15 16 24 47 66 75 76 132 144 150 153 156
Это код гольф, поэтому выигрывает самая короткая программа или функция.
Забавный факт: последний элемент вывода для входа N, N-1, ... ,1
представляется (N+1)th
элементом последовательности A007952 . Если вы найдете доказательство, вы можете включить его в свой гольф-ответ или опубликовать в качестве комментария.