В Школе Нечародейства и Неволшебства на стену были повешены абсолютно не волшебные, но довольно необычные часы. По прошествию каждого часа с момента их запуска они бьют некоторое число раз.
Понаблюдав некоторое время за этими настенными часами, ученики вывели следующую зависимость между количеством часов, прошедших с момента запуска и количеством ударов:
по прошествии каждого часа, номер которого не кратен 10, происходит ровно один удар;
в конце часа, номер которого делится на 10, но не делится 100, настенные часы издают два удара;
в те часы, номера которых кратны 100, но не кратны 1000, часы будут бить уже три раза
и т.д.
То есть, каждый час, номер которого делится на 10k, но не делится на 10k+1, будет происходить k+1 ударов.
Наши знакомые Рома и Жора решили выяснить, сколько ударов сделают настенные часы за N часов с момента их запуска. Помогите им вычислить это количество.
Входные данные
Единственная строка содержит натуральное число N (1≤N≤10**9) – количество часов, прошедших с момента запуска.
Выходные данные
Выведите одно натуральное число – общее количество ударов, которые сделают настенные часы за N первых часов своей работы
1 Ответ
m = 215
s = 1
res = 0
while m:
res += (m%10)*s
s = s*10 + 1
m //= 10
print(res)