120. 小红的数字匹配

内存限制:256 MB 时间限制:1.000 S

题目描述

定义一个 “模板串“ 为一个由数字字符和 "?" 组成的字符串。我们可以通过将问号替换成数字字符来得到正整数。显然,一个模板串可能会和多个正整数匹配。


例如: "1?2"可以和 102 或者 132 等正整数匹配。请注意,匹配的正整数不能包含前导零,例如"??1"可以匹配101,但不能匹配 001。小红拿到了一个模板串,她想知道,和这个模板串匹配的正整数中,第 k 小的是多少?

输入

第一行输入一个正整数 t,代表询问次数。接下来的 2 * t 行,每两行为一次询问: 第一行输入一个字符串,仅由数字字符和 '?' 组成。第二行输入一个正整数 k,代表询问的是第 k 小。

输出

输出 t 行,每行输出一个答案。如果一共都没有k个匹配的正整数,则输出 -1。否则输出第小的匹配的正整数。

样例输入 复制

4
??1
1
22?
100000000
2??
3
000???
1

样例输出 复制

101
-1
202
-1

提示

数据范围: 1 ≤ t ≤ 10^4 1 ≤ k ≤ 10^9 字符串长度不超过 30。