Codeforces Round 748 (Div. 3) |
---|
Закончено |
Задано целое положительное число $$$n$$$. За $$$1$$$ ход можно выбрать любую его цифру и удалить её (т. е. выбирается некоторая позиция в числе и удаляется стоящая в этой позиции цифра). Операцию нельзя произвести, если осталась всего одна цифра. Если получившееся число содержит ведущие нули, то они автоматически удаляются.
Например, если из числа $$$32925$$$ удалить $$$3$$$-ю цифру, то результатом операции станет число $$$3225$$$, а если из числа $$$20099050$$$ удалить первую цифру, то результатом операции станет число $$$99050$$$ (следующие за первой цифрой $$$2$$$ нуля удаляются автоматически).
Какое наименьшее число ходов необходимо совершить, чтобы получившееся число делилось на $$$25$$$ и было положительным? Гарантируется, что для всех $$$n$$$, заданных во входных данных, ответ существует. Гарантируется, что число $$$n$$$ задано без ведущих нулей.
В первой строке записано одно целое число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных. Далее следуют $$$t$$$ наборов входных данных.
Каждый набор входных данных состоит из одной строки, содержащей одно целое число $$$n$$$ ($$$25 \le n \le 10^{18}$$$). Гарантируется, что для всех $$$n$$$, заданных во входных данных, ответ существует. Гарантируется, что число $$$n$$$ задано без ведущих нулей.
Для каждого набора входных данных в отдельной строке выведите целое число $$$k$$$ ($$$k \ge 0$$$) — наименьшее число ходов, которые нужно сделать, чтобы число стало делиться на $$$25$$$.
5 100 71345 3259 50555 2050047
0 3 1 3 2
В первом наборе входных данных уже задано число, которое делится на $$$25$$$.
Во втором наборе входных данных можно удалить цифры $$$1$$$, $$$3$$$ и $$$4$$$, тогда получится число $$$75$$$.
В третьем наборе входных данных достаточно удалить последнюю цифру — получится число $$$325$$$.
В четвёртом наборе входных данных необходимо удалить три последние цифры — получится число $$$50$$$.
В пятом наборе входных данных достаточно удалить цифры $$$4$$$ и $$$7$$$.
Название |
---|