Balão de água

Published by Helen Yu in

Quando um balão de água estoura, ele molha a área ao seu redor. O chão fica mais seco quanto mais longe você estiver do balão.

O efeito de um balão de água estourando pode ser modelado usando um array. Crie uma função que receba um array com o estado anterior ao estouro e retorne o estado depois que o balão estourar. O estado anterior ao estouro conterá no máximo um único balão, cujo tamanho é representado pelo único elemento diferente de zero.

Exemplos

pop([0, 0, 0, 0, 4, 0, 0, 0, 0]) ➞ [0, 1, 2, 3, 4, 3, 2, 1, 0]

pop([0, 0, 0, 3, 0, 0, 0]) ➞ [0, 1, 2, 3, 2, 1, 0]

pop([0, 0, 2, 0, 0]) ➞ [0, 1, 2, 1, 0]

pop([0]) ➞ [0]

Observações

  • O comprimento do array de entrada é sempre ímpar.
  • O array de entrada sempre terá o comprimento exato necessário para que haja exatamente um zero na borda.
  • Se o array de entrada consistir apenas em zeros, retorne o mesmo array.