Олимпиадный тренинг

Задача . B. Весело составлять последовательности


Определим S(n) для положительного целого числа n следующим образом: количество цифр в десятичной записи числа n. Например, S(893) = 3, S(114514) = 6.

Вы хотите составить последовательность из целых чисел, следующих друг за другом, начиная с числа m (m, m + 1, ...). Но для того, чтобы добавить в последовательность число n, надо заплатить S(nk.

Вы можете потратить w, при этом последовательность необходимо сделать как можно длиннее. Напишите программу, сообщающую максимальную длину последовательности.

Входные данные

В первой строке записано три целых числа w (1 ≤ w ≤ 1016), m (1 ≤ m ≤ 1016), k (1 ≤ k ≤ 109).

Пожалуйста, не используйте спецификатор %lld для чтения и записи 64-битных целых чисел на C++. Рекомендуется использовать потоки cin, cout или спецификатор %I64d.

Выходные данные

В первой строке выведите целое число — ответ на задачу.


Примеры
Входные данныеВыходные данные
1 9 1 1
9
2 77 7 7
7
3 114 5 14
6
4 1 1 2
0

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя