#P16867. [GKS 2021 #H] Silly Substitutions

    ID: 19194 远端评测题 3000ms 1024MiB 尝试: 0 已通过: 0 难度: 6 上传者: 标签>2021优先队列队列链表Google Kick Start

[GKS 2021 #H] Silly Substitutions

题目描述

给定一个长度为 NN 的字符串 SS,由数字 00-99 组成。按以下顺序对字符串执行操作:

  1. 找出所有子串 01\mathtt{01},并将其替换为 2\mathtt{2}
  2. 找出所有子串 12\mathtt{12},并将其替换为 3\mathtt{3}
  3. 找出所有子串 23\mathtt{23},并将其替换为 4\mathtt{4}
  4. 找出所有子串 34\mathtt{34},并将其替换为 5\mathtt{5}
  5. 找出所有子串 45\mathtt{45},并将其替换为 6\mathtt{6}
  6. 找出所有子串 56\mathtt{56},并将其替换为 7\mathtt{7}
  7. 找出所有子串 67\mathtt{67},并将其替换为 8\mathtt{8}
  8. 找出所有子串 78\mathtt{78},并将其替换为 9\mathtt{9}
  9. 找出所有子串 89\mathtt{89},并将其替换为 0\mathtt{0}
  10. 找出所有子串 90\mathtt{90},并将其替换为 1\mathtt{1}

重复这一过程(按照相同的顺序),直到上述操作不再改变字符串。例如,若 SS12\mathtt{12},则操作 11 不会影响字符串,但操作 22 会将字符串变为 3\mathtt{3}。可以验证,无论重复多少次上述过程,字符串都不会再改变。

对于给定的 SS,你的任务是求出最终的字符串。

输入格式

输入的第一行给出测试用例的数量 TT。接下来有 TT 个测试用例。每个测试用例由两行组成。

每个测试用例的第一行包含一个整数 NN,表示字符串 SS 的长度。

每个测试用例的第二行包含一个长度为 NN 的字符串 SS

输出格式

对于每个测试用例,输出一行,格式为 Case #x: y,其中 xx 是测试用例编号(从 11 开始),yy 是最终得到的字符串。

4
3
012
4
0145
5
00000
11
98765432101
Case #1: 22
Case #2: 26
Case #3: 00000
Case #4: 1

提示

在样例 #1 中,子串 01\mathtt{01} 被替换为 2\mathtt{2},得到字符串 22\mathtt{22},后续操作不会再改变它。因此最终字符串为 22\mathtt{22}

在样例 #2 中,子串 01\mathtt{01} 被替换为 2\mathtt{2},得到字符串 245\mathtt{245}。然后子串 45\mathtt{45} 被替换为 6\mathtt{6},得到字符串 26\mathtt{26},不再受任何操作影响。因此最终字符串为 26\mathtt{26}

在样例 #3 中,无法对给定字符串执行任何操作,因此字符串保持不变。

在样例 #4 中,所有操作可以顺序作用于字符串,最终得到字符串 1\mathtt{1}

限制条件

1T1001 \le T \le 100

输入字符串仅由数字 00-99 组成。

测试集 1

1N1001 \le N \le 100

测试集 2

最多 1010 个测试用例满足:

1N5×1051 \le N \le 5 \times 10^5

其余测试用例满足:

1N1001 \le N \le 100

翻译由 DeepSeek V4 Pro 完成