CF1611A Make Even

题目描述

Polycarp 有一个不包含数字 $0$ 的整数 $n$。他可以使用他的数字执行以下操作数次(可能为零): 将 $n$ 的长度 $l\ (1 \leq l \leq |n|$,这里 $|n|$ 指 $n$ 的十进制长度 $)$ 的前缀反转,即反转 $n$ 的 前 $l$ 位数字。那么,第 $1$ 个数位(默认从左向右数,下文同理)将与第 $l$ 个数位交换,第 $2$ 个数位与第 $(l-1)$ 个交换......以此类推。 例如,如果 $n=123456789$ 且 $l=5$,则 $n$ 变换后的值将为 $543216789$。 对于不同的操作,$l$ 的值可能不同。 Polycarp 喜欢偶数,并且非常不耐烦。因此,他想用最少的操作次数使他的数字 $n$ 变成偶数。 **本题有多组数据。**

输入格式

第一行,一个整数 $t\ (1 \leq t \leq 10^4)$,表示数据的组数。 接下来 $t$ 行,每行一个数 $n\ (1 \leq n \leq 10^9)$。可以保证该数中各数位没有 $0$。

输出格式

共 $t$ 行,每行一个整数,表示将该数字变成偶数的最小操作次数。如果无论如何操作,都无法变为偶数,则输出 `-1`。

说明/提示

In the first test case, $ n=3876 $ , which is already an even number. Polycarp doesn't need to do anything, so the answer is $ 0 $ . In the second test case, $ n=387 $ . Polycarp needs to do $ 2 $ operations: 1. Select $ l=2 $ and reverse the prefix $ \underline{38}7 $ . The number $ n $ becomes $ 837 $ . This number is odd. 2. Select $ l=3 $ and reverse the prefix $ \underline{837} $ . The number $ n $ becomes $ 738 $ . This number is even. It can be shown that $ 2 $ is the minimum possible number of operations that Polycarp needs to do with his number to make it even. In the third test case, $ n=4489 $ . Polycarp can reverse the whole number (choose a prefix of length $ l=4 $ ). It will become $ 9844 $ and this is an even number. In the fourth test case, $ n=3 $ . No matter how hard Polycarp tried, he would not be able to make an even number.