Задание 4. Сон Пифагора
Если во сне вы производите вычитание,то это свидетельствует о неразвитостивашей личности и неготовности жить своим умом!Любовь Поливалина, «Сонник Пифагора». Пифагору снится тревожный сон ему следует из числа nn постоянно вычитать его последнюю цифру, не равную нулю. Например, при n=27 Пифагор сначала получит число 27−7=20, потом 20−2=18, 18−8=10, 10−1=9, 9−9=0. Получив число 0, великий учёный избавится от кошмара, но проблема лишь в том, что ему снится очень большое число. Сколько вычитаний придётся совершить Пифагору, пока он не доберётся до нуля?
Формат входных данных
Единственная строка входных данных содержит натуральное число n (1≤n≤1018).
Формат выходных данных
Выведите одно натуральное число ответ на вопрос задачи.
Система оценки
Решения, правильно работающие при n≤105, будут оцениваться в 30 баллов.
Ввод
27
Вывод
5
Введём переменные n и k, исходное число (n) и число равное значению последней цифры
числа n (k).
Переменная s представляет собой строку цифр, соответствующую числу n.
В цикле n Уменьшаем на величину k, а если k = 0,то ищем цифру отличную от нуля и преобразуем эту цифру в число k.
Код программы на языке Python:
n=int(input())
k=n%10
counter=0
while n!=0:
s=str(n)
i=1
while s[-i]=="0" and i<len(s):
i+=1
k=int(s[-i])
counter+=1
n-=k
print(counter)
Набираем в Python:
Работает при любых натуральных значениях n
При n=27 результат равен 5
Можно проверить на своих данных (ссылка на работающий пример)
Пифагор даже во сне не может расслабиться, ему снится математика. Во сне из числа нужно вычесть последнюю цифру. Если в конце цифра ноль, Пифагор вычитает цифру слева от нуля. Ему нужно получить в итоге цифру О. Избавить Пифагора от ночного кошмара поможет следующий программный код: