L'ajout de pyramide à l'envers est le processus consistant à prendre une liste de nombres et à les additionner consécutivement jusqu'à ce que vous atteigniez un nombre.
Lorsque les chiffres sont donnés, le 2, 1, 1
processus suivant se produit:
2 1 1
3 2
5
Cela se termine par le nombre 5
.
TA TÂCHE
Étant donné le côté droit d'une pyramide à l'envers (ascendant), écrivez un programme ou une fonction qui renverra la liste d'origine.
Nouveau défi supplémentaire : essayez de faire cela en moins de O (n ^ 2)
EXEMPLE
f([5, 2, 1]) => [2, 1, 1]
f([84,42,21,10,2]) => [4,7,3,8,2]
REMARQUE: la pyramide à l'envers ne sera jamais vide et sera toujours composée uniquement d'entiers positifs.
Try doing this in less than O(n)
il est sûrement impossible d'allouer un tableau de taille n ou de modifier O (n) éléments plus rapidement que la complexité O (n)?