Problem
Original anzeigen (Englisch)Wähle in jedem Schritt eine aktuell im Zahlwert vorhandene, von Null verschiedene Dezimalziffer und subtrahiere diese Ziffer. Nach jedem Schritt werden die Ziffern aus dem neuen Wert entnommen. Finde die minimale Anzahl an Schritten, um Null zu erreichen.
Implementiere removing_digits(n).
Eingabe
n: Die positive Startzahl.
Ausgabe
Gib die geringste Anzahl an Subtraktionsschritten zurück.
Einschränkungen
1 ≤ n ≤ 1.000.000. Das Subtrahieren von Null ist kein zulässiger Zug und ausgeschlossen.
Beispiele
Eingabe:
n = 14
Erwartete Ausgabe:
expected = 3
Eingabe:
long long n = 14;
Erwartete Ausgabe:
long long expected = 3;
Eingabe:
long n = 14;
Erwartete Ausgabe:
long expected = 3;
Erläuterung
14 → 10 → 9 → 0 benötigt drei Schritte. Keine der möglichen ersten Subtraktionen erreicht Null in nur zwei Schritten.
Eingabe:
n = 7
Erwartete Ausgabe:
expected = 1
Eingabe:
long long n = 7;
Erwartete Ausgabe:
long long expected = 1;
Eingabe:
long n = 7;
Erwartete Ausgabe:
long expected = 1;
Erläuterung
Subtrahiere die einzige Ziffer, 7, um sofort 0 zu erreichen.
Referenzen
Diese Aufgabe wurde für CodeUtility angepasst. Beachte die oben genannten Vorgaben und Einschränkungen.