Problema
Ver original (inglês)A cada passo, escolha um dígito decimal não nulo presente atualmente no número e subtraia esse dígito. Os dígitos são escolhidos a partir do novo valor após cada passo. Encontre o número mínimo de passos necessários para chegar a zero.
Implemente removing_digits(n).
Entrada
n: O número inicial positivo.
Saída
Retorne o menor número de passos de subtração.
Restrições
1 ≤ n ≤ 1.000.000. Subtrair zero não é uma jogada útil e está excluído.
Exemplos
Entrada:
n = 14
Saída esperada:
expected = 3
Entrada:
long long n = 14;
Saída esperada:
long long expected = 3;
Entrada:
long n = 14;
Saída esperada:
long expected = 3;
Explicação
14 → 10 → 9 → 0 usa três passos. Nenhuma das possíveis primeiras subtrações permite chegar a zero em apenas dois passos.
Entrada:
n = 7
Saída esperada:
expected = 1
Entrada:
long long n = 7;
Saída esperada:
long long expected = 1;
Entrada:
long n = 7;
Saída esperada:
long expected = 1;
Explicação
Subtraia o único dígito, 7, para chegar imediatamente a 0.
Referências
Este desafio foi adaptado para o CodeUtility. Siga o enunciado e as restrições acima.