Vamos definir os "deltas multiplicativos" dos valores como:
A operação reversa - ou seja, "undelta multiplicativo" - retorna valores de forma que a operação acima resulte nos valores fornecidos.
Exemplo
Valores fornecidos uma solução geral para aoperação "undelta multiplicativa" é:
A solução particular pode ser obtido através da criação a qualquer valor diferente de zero, por exemplo através da criação obteríamos:
Desafio
Sua tarefa para este desafio é implementar a operação " undelta multiplicativo ", conforme definido acima.
Regras
As entradas são:
- um valor diferente de zero
- uma lista não-vazia / array / vetor / ..., de "não-zero de deltas multiplicativos "
A saída é uma lista / matriz / vetor / ... de valores, de modo que o primeiro elemento seja e para o qual os " deltas multiplicativos " são a entrada.
Nota: Se o seu idioma não suportar números inteiros negativos, você poderá substituir diferente de zero por positivo .
Casos de teste
2 [21] -> [2,42]
1 [1,5,3,2] -> [1,1,5,15,30]
-1 [1,5,3,2] -> [-1,-1,-5,-15,-30]
7 [1,-5,3,2] -> [7,7,-35,-105,-210]
2 [-12,3,-17,1311] -> [2,-24,-72,1224,1604664]
-12 [7,-1,-12,4] -> [-12,-84,84,-1008,-4032]
1 [2,2,2,2,2,2,2,2] -> [1,2,4,8,16,32,64,128,256]