Divisibility by 25

题意翻译

给出一个从1到10^18的整数n,但不包含前导零。 在一次移动中,您可以交换给定数字中的任意两个相邻数字,使得结果数字不会包含前导零。 换句话说,在每次移动后,您所拥有的数字都不能包含任何前导零。 获取可被25整除的数字所需的最小移动次数是多少? 如果无法获得可被25整除的数字,则打印-1。

题目描述

You are given an integer $ n $ from $ 1 $ to $ 10^{18} $ without leading zeroes. In one move you can swap any two adjacent digits in the given number in such a way that the resulting number will not contain leading zeroes. In other words, after each move the number you have cannot contain any leading zeroes. What is the minimum number of moves you have to make to obtain a number that is divisible by $ 25 $ ? Print -1 if it is impossible to obtain a number that is divisible by $ 25 $ .

输入输出格式

输入格式


The first line contains an integer $ n $ ( $ 1 \le n \le 10^{18} $ ). It is guaranteed that the first (left) digit of the number $ n $ is not a zero.

输出格式


If it is impossible to obtain a number that is divisible by $ 25 $ , print -1. Otherwise print the minimum number of moves required to obtain such number. Note that you can swap only adjacent digits in the given number.

输入输出样例

输入样例 #1

5071

输出样例 #1

4

输入样例 #2

705

输出样例 #2

1

输入样例 #3

1241367

输出样例 #3

-1

说明

In the first example one of the possible sequences of moves is 5071 $ \rightarrow $ 5701 $ \rightarrow $ 7501 $ \rightarrow $ 7510 $ \rightarrow $ 7150.