Dovresti scrivere un programma o una funzione che, dato un elenco di numeri interi positivi, moltiplica ogni elemento con il numero intero positivo più piccolo possibile per creare un elenco strettamente crescente.
Ad esempio se l'ingresso è
5 4 12 1 3
le moltiplicazioni saranno
5*1=5 4*2=8 12*1=12 1*13=13 3*5=15
e l'output sarà l'elenco crescente
5 8 12 13 15
Ingresso
- Un elenco di numeri interi positivi contenenti almeno 1 elemento
Produzione
- Un elenco di numeri interi positivi
Esempi
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
Questo è il codice golf, quindi vince il programma o la funzione più breve.
Curiosità: l'ultimo elemento dell'output per l'ingresso N, N-1, ... ,1
sembra essere l' (N+1)th
elemento della sequenza A007952 . Se trovi una prova, sei il benvenuto ad includerla nella tua risposta sul golf o pubblicarla come commento.