果冻挑战成功,去了异世界开发手游。临走前,他撕毁了条约,公开了私藏未销毁的锦乐照片。在发现照片公开的瞬间,白茶的 AI 立马监测到了,并打算在发布到网上之前将其拦截。拦截需要解出果冻加密用的自创数位积算法,破解具体如下:
对于非负整数 k,定义 f(k) 为十进制下 k 的所有数位的乘积,如:
\begin{aligned} f(27)&= 2 \times 7=14 \\ f(365)&= 3 \times 6 \times 5= 90 \end{aligned}
现给定非负整数 x,y,试找到一个有序对 (l,r),满足 l,r 都是整数,且有:
0\leq l \leq r \leq 10^y -1 \\ x=\prod_{i=l}^{r}{f(i)}=f(l) \times f(l+1) \times f(l+2) \times \cdots \times f(r-1) \times f(r)
输入
输入包含多组测试用例。
第一行包含一个整数 t \ (1 \leq t \leq 2 \times 10^4),表示你需要处理 t 组测试用例。
接下来 t 行每行一组测试用例,各包含两个用空格间隔的整数 x,y \ (0 \leq x \leq 10^{18},0 \leq y \leq 18),含义如题目描述所示。
输出
对于每组测试用例,如果存在符合题目条件的有序对,输出两个整数 l,r,表示你找到的有序对,如果有多个符合题目条件的有序对,你只需要输出其中任意一个;如果不存在符合题目条件的有序对,输出 -1。
数与数之间用空格或换行符间隔。
样例
标准输入 复制文本 |
4 120 5 97 12 1000000000 18 0 18 |
标准输出 复制文本 |
14 16 -1 252525252525252525 252525252525252525 0 0 |
提示
对于测试用例 1,\prod_{i=14}^{16}{f(i)}= 120,且 0 \leq 14 \leq 16 \leq 10^5 -1,故 (14,16) 符合题意。
对于测试用例 2,可以证明一定不存在符合条件的有序对,故输出 -1。
对于测试用例 3,注意有些符合条件的 l,r 不一定能用整型变量储存。
测试用例 1,3,4 的答案均不唯一。