有了 0 到 9 这 10 个阿拉伯数字,我们可以构造出任意的自然数。
但是,在奇异世界里面,有一些阿拉伯数字丢失了,我们用一个长度为 10 的 01 串 s 来表示奇异世界里面拥有那些阿拉伯数字。01 串 s 下标从 0 开始编号,上面的一位为 1,表示奇异世界拥有该下标的对应的阿拉伯数字。例如:
1000010001
,表示奇异世界有数字 0,5,91111000100
,表示奇异世界有数字 0,1,2,3,7而你最喜欢的数字是 x,你希望用奇异世界中的数字组成一个 x 的倍数 y,即 y 除以 x 的余数是 0,如果在闭区间 [1, 10^{100}] 里面能够找到,输出最小的 x 的倍数,否则,输出 -1。
输入
第一行一个数 T ,表示测试的组数。(1 ≤ T ≤ 200) 每组有一长度为 10 的 01 串和一个 正整数 x(0 < x ≤ 3000),含义如题意所示
输出
对于每组测,输出一行,表示答案,有解时,解不能含前导 0。
样例
标准输入 复制文本 |
10 0000001000 98 1111111101 88 1000000001 89 0000001000 232 1111000000 1230 0111111000 777 0111100000 666 1000010000 3000 1000011111 29 1100000000 33 |
标准输出 复制文本 |
666666666666666666666666666666666666666666 176 99090909 -1 1230 1554 1332 555000 58 111111 |
来源
2019 SCNUCS-N 现场赛