BFS练习1.5

给你一个数字aa,每次可以选择下面四种操作中的一种:

  1. 把数字aa加上一。
  2. 把数字aa乘以22
  3. 把数字aa乘以33
  4. 把数字aa减去一。

但是在变的过程中,数字aa里面不能有数位4

问把这个aa变成bb最少需要多少步。

你要回答qq个询问,b1,b2,,bqb_1, b_2, \dots, b_q,输出把aa变成b1,b2,,bqb_1, b_2 ,\dots, b_q的最小步数。

输入格式

第一行两个整数a,qa, q

接下来一行qq个整数b1,,bqb_1, \dots, b_q

输入格式

输出qq个数字,分别表示把aa变成b1,b2,bqb_1, b_2 \dots, b_q的最小步数,如果不能变到bib_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

数据规模

对于所有数据,保证1a,q,bi1051\leq a, q, b_i \leq 10^5aa里面不包含数位4