#P1132. 数字生成游戏
数字生成游戏
题目描述
小明完成了这样一个数字生成游戏,对于一个不包含 的数字 来说,有以下 种生成新的数的规则:
-
将 的任意两位对换生成新的数字,例如 可以生成 ;
-
将 的任意一位删除生成新的数字,例如 可以生成 ;
-
在 的相邻两位之间 之间插入一个数字 , 需要满足 。例如 可以生成 ,但是不能生成 等。
现在小明想知道,在这个生成法则下,从 开始,每次生成一个数,可以用然后用新生成的数生成另外一个数,不断生成直到生成 至少需要多少次生成操作。
另外,小明给规则 又加了一个限制,即生成数的位数不能超过初始数 的位数。若 是 ,那么 与 都是无法生成的;若 为 ,那么可以将 删除变为 ,再生成 或 。
输入格式
第一行包含 个正整数,为初始数字 。
第二行包含一个正整数 ,为询问个数。
接下来 行,每行一个整数 ( 不包含 ),表示询问从 开始不断生成数字到 最少要进行多少次操作。任两个询问独立,即上一个询问生成过的数到下一个询问都不存在,只剩下初始数字 。
输出格式
共 行,每行一个正整数,对每个询问输出最少操作数,如果无论如果无论也变换不成,则输出 。
143
3
134
133
32
1
-1
4
提示
样例解释
无法得到
数据范围
对于 的数据,;
对于 的数据,;
对于 的数据,;
对于 的数据,;
对于 的数据,。