#P447. yz的压压

yz的压压

题目描述

dyz神发现了一种特殊的数字运算,称为"数字压力折叠"。对于一个正整数 xx,定义其压力操作为:

  • xx 的各位数字倒叙排列并去除前导 00 得到x';
  • 计算 x+xx+x' 得到新数字;
  • 重复这个过程直到得到一个回文数 例如,对于 x=68x = 68 有:
  • 第一次压力:6868 + 86=15486=154;
  • 第二次压力:154154 + 541=605541 = 605
  • 第三次压力:605+506605 + 506 = 11111111 (是一个回文数)。 现在给定一个正整数 nn 和最大操作次数 kk,请判断:nn 在最多 kk 次折叠操作内(当然,也可以不操作)是否能变成回文数。如果能,输出最少操作次数得到的回文数和最少的操作次数;如果不能,输出第 kk 次操作后的结果和 −11

【名词解释】 回文数:一个数被称作回文数,当且仅当这个数从左往右读和从右往左读是相同的。

输入格式

每个测试文件均包含多组测试数据。第一行输入一个整数T(1<=T<=101<=T<=10^44^) 代表数据组数,每组测试数据描述如下: 在一行上输入两个整数 n,k(1<=n<=101<=n<=10^66^,11<=k<=50k<=50)。

输出格式

对于每一组测试数据,新起一行:

  • 如果在 KK 词操作内得到回文数,在一行上输出两个整数,表示最少操作次数得到的该回文数,最少操作次数;
  • 否则,在一行上输出两个整数,表示第 kk 次操作侯的结果、固定的整数 1-1

样例

样例输入 1

4
68 3
68 2
196 10
1145 14

样例输出 1

1111 3
605 -1
18211171 -1
6556 1

提示

对于第一组测试数据,已经在题面中加以解释。 对于第二组测试数据,6868 -> 154154 -> 605605(两次未得到回文数) 对于第三组测试数据,196196 是著名的 Lychrel 数,我们可以证明,在 1010 次操作内无法得到回文数。 对于第四组测试数据,11451145 -> 65566556 一步得到回文数。