星图压缩
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
星图终端会把一条很长的坐标编号按十进制写下。为了制作多级缩略图,终端需要从低位到高位逐层压缩这个编号。
给定一个有 位的非负整数 ,将它从高位到低位依次编号为第 位到第 位。压缩过程从第 位开始,向前逐位进行。处理第 位时:
- 若当前第 位数字小于等于 ,则把第 位以及它右侧所有位全部变为 。
- 若当前第 位数字大于等于 ,也把第 位以及它右侧所有位全部变为 ,但要向第 位进 。
- 如果进位使某一位变成 ,则按照十进制规则继续向更高位进位。即使最高位发生进位,原来的第 到第 位编号仍按最初的 位计算。
你需要输出从原数开始,依次处理第 位、第 位、、第 位后的所有结果,共 个数。相邻两个结果之间用空格、短横线、右尖括号组成的字符串 -> 分隔。
输入格式
第一行一个整数 ,表示数据组数。
对于每组数据:
第一行一个整数 ,表示 的位数。
第二行一个 位整数 。
输出格式
对于每组数据,输出一行,表示该编号逐层压缩的全过程。
样例
样例输入 1
3
4
2023
1
9
3
197
样例输出 1
2023 -> 2020 -> 2000 -> 2000
9
197 -> 200 -> 200
数据范围
| 测试点 | 特殊性质 | |
|---|---|---|
| 1 | 无特殊限制 | |
| 无 | ||
| 无特殊限制 |
对于 的数据,,。