Incrementar até o máximo

Retorne o número total de incrementos unitários necessários para elevar cada número do array até o seu maior valor.

Exemplos

incrementToTop([3, 4, 5]) ➞ 3
// O elemento máximo do array é 5.
// Para transformar 3 em 5, são necessários 2 incrementos: 3 -> 4, 4 -> 5.
// Para transformar 4 em 5, é necessário 1 incremento: 4 -> 5.
// O número total de incrementos necessários é 3.

incrementToTop([4, 3, 4]) ➞ 1
// O elemento máximo do array é 4.
// Para transformar 3 em 4, é necessário 1 incremento: 3 -> 4.
// O número total de incrementos necessários é 1.

incrementToTop([3, 3, 3]) ➞ 0

incrementToTop([3, 10, 3]) ➞ 14

Observações

  • Se o array contiver apenas algarismos iguais, retorne 0 (veja o exemplo #3).
  • Bônus: Você consegue escrever uma solução que faça isso percorrendo o array apenas uma vez? (i.e. sem encontrar o máximo antecipadamente)