В ряд друг за другом выписали по очереди все целые числа от L до R включительно без промежутков и разделителей между ними, так что получилось одно общее число. Определите количество цифр в этом числе.
Формат входных данных
В первой строке вводится целое число L, во второй строке вводится целое число R (1≤L≤R≤1017).
Обратите внимание, что значения L и R могут превышать возможное значение 32-битной целочисленной переменной, поэтому необходимо использовать 64-битные целочисленные типы данных (тип int64 в языке Pascal, тип long long в C++, тип long в Java и C#).
Формат выходных данных
Выведите количество цифр в получившемся числе.
Пояснение
В первом примере выписанное число — 891011, в нём 6 цифр.
Ввод
Вывод
1 Ответ
Ответ:
L = int(input())
R = int(input()) + 1
sum = 0
while L != R:
l = L
r = R
while l + 1 != r:
m = (l + r) // 2
if len(str(L)) == len(str(m)):
l = m
else:
r = m
sum += (r — L) * len(str(L))
L = r
print(sum)