给你一个数字$a$,每次可以选择下面四种操作中的一种:
- 把数字$a$加上一。
- 把数字$a$乘以$2$。
- 把数字$a$乘以$3$。
- 把数字$a$减去一。
但是在变的过程中,数字$a$里面不能有数位4
。
问把这个$a$变成$b$最少需要多少步。
你要回答$q$个询问,$b_1, b_2, \dots, b_q$,输出把$a$变成$b_1, b_2 ,\dots, b_q$的最小步数。
输入格式
第一行两个整数$a, q$。
接下来一行$q$个整数$b_1, \dots, b_q$。
输入格式
输出$q$个数字,分别表示把$a$变成$b_1, b_2 \dots, b_q$的最小步数,如果不能变到$b_i$,输出-1
。
样例输入
7 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
样例输出
-1 -1 -1 -1 2 1 0 1 2 3 3 2 3 -1 3 2 3 2 3 2
数据规模
对于所有数据,保证$1\leq a, q, b_i \leq 10^5$,$a$里面不包含数位4
。