Debería escribir un programa o función que, dada una lista de enteros positivos, multiplique cada elemento con el entero positivo más pequeño posible para crear una lista estrictamente creciente.
Por ejemplo si la entrada es
5 4 12 1 3
las multiplicaciones serán
5*1=5 4*2=8 12*1=12 1*13=13 3*5=15
y la salida será la lista creciente
5 8 12 13 15
Entrada
- Una lista de enteros positivos que contiene al menos 1 elemento
Salida
- Una lista de enteros positivos
Ejemplos
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
Este es el código de golf, por lo que gana el programa o función más corto.
Dato curioso: el último elemento de la salida para la entrada N, N-1, ... ,1
parece ser el (N+1)th
elemento de la secuencia A007952 . Si encuentra una prueba, puede incluirla en su respuesta de golf o publicarla como comentario.