На каждом шаге выберите любую ненулевую десятичную цифру, которая присутствует в текущем числе, и вычтите её. После каждого шага цифры берутся из нового значения. Найдите минимальное количество шагов, необходимых для получения нуля.
Реализуйте функцию removing_digits(n).
Входные данные
n: Положительное начальное число.
Выходные данные
Верните минимальное количество шагов вычитания.
Ограничения
1 ≤ n ≤ 1 000 000. Вычитание нуля не считается допустимым ходом и исключается.
Примеры
Ввод:
n = 14
Ожидаемый вывод:
expected = 3
Ввод:
long long n = 14;
Ожидаемый вывод:
long long expected = 3;
Ввод:
long n = 14;
Ожидаемый вывод:
long expected = 3;
Пояснение
14 → 10 → 9 → 0 — три шага. Ни одно из возможных первых вычитаний не позволяет достичь нуля за два шага.
Ввод:
n = 7
Ожидаемый вывод:
expected = 1
Ввод:
long long n = 7;
Ожидаемый вывод:
long long expected = 1;
Ввод:
long n = 7;
Ожидаемый вывод:
long expected = 1;
Пояснение
Вычтите единственную цифру, 7, чтобы сразу получить 0.
Ссылки
Это задание адаптировано для CodeUtility. Следуйте условию и ограничениям выше.