logo AlgoBeat OnlineJudge
登录 注册

#200132. 数字生成游戏

内存限制:125 MiB 时间限制:1000 ms 标准输入输出
题目类型:VJudge(洛谷) 评测方式:VJudge
上传者: 匿名

题目描述

小明完成了这样一个数字生成游戏,对于一个不包含 的数字 来说,有以下 种生成新的数的规则:

  1. 的任意两位对换生成新的数字,例如 可以生成

  2. 的任意一位删除生成新的数字,例如 可以生成

  3. 的相邻两位之间 之间插入一个数字 需要满足 。例如 可以生成 ,但是不能生成 等。

现在小明想知道,在这个生成法则下,从 开始,每次生成一个数,可以用然后用新生成的数生成另外一个数,不断生成直到生成 至少需要多少次生成操作。

另外,小明给规则 又加了一个限制,即生成数的位数不能超过初始数 的位数。若 ,那么 都是无法生成的;若 ,那么可以将 删除变为 ,再生成

输入格式

第一行包含 个正整数,为初始数字

第二行包含一个正整数 ,为询问个数。

接下来 行,每行一个整数 不包含 ),表示询问从 开始不断生成数字到 最少要进行多少次操作。任两个询问独立,即上一个询问生成过的数到下一个询问都不存在,只剩下初始数字

输出格式

行,每行一个正整数,对每个询问输出最少操作数,如果无论如果无论也变换不成,则输出

样例

样例输入 1

143
3
134
133
32

样例输出 1

1
-1
4

数据范围与提示

样例解释

无法得到

数据范围

对于 的数据,
对于 的数据,
对于 的数据,
对于 的数据,
对于 的数据,