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

Задача . B. Странное округление


Поликарп без ума от круглых чисел. Особенно ему нравятся числа, которые делятся на 10k.

В заданном числе n Поликарп хочет удалить наименьшее количество цифр, чтобы получилось число, которое делится на 10k. Например, если k = 3, то в числе 30020 достаточно удалить одну цифру (цифру 2). В таком случае результат будет равен 3000, что делится на 103 = 1000.

Напишите программу, которая выведет минимальное количество цифр, которые надо удалить из числа n, чтобы результат делился на 10k. Результат не должен начинаться с ненужного лидирующего нуля (то есть с нуля может начинаться только число 0, которое обязано быть записано ровно одной цифрой).

Гарантируется, что ответ существует.

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

В единственной строке входных данных записаны два целых числа n и k (0 ≤ n ≤ 2 000 000 000, 1 ≤ k ≤ 9).

Гарантируется, что ответ на задачу существует. Все числа во входных данных записаны в традиционной форме записи целых чисел, то есть без лишних лидирующих нулей.

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

Выведите w — искомое минимальное количество цифр. После удаления подходящих w цифр из числа n должно получиться значение, которое делится на 10k и начинается с нуля в единственном случае (число равно нулю и записано ровно одной цифрой 0).

Примечание

В примере 2 вы можете удалить цифру 1 и любой из нулей. Тогда останется число 0, которое делится на любое другое число.


Примеры
Входные данныеВыходные данные
1 30020 3
1
2 100 9
2
3 10203049 2
3

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

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