#CF3725. 替换前者,最小
替换前者,最小
题目描述
给定一个由小写拉丁字母组成的字符串 。
可以使用以下操作:
- 选择一个在字符串中至少出现一次的字符(从
a
到z
)。并将字符串中所有这样的字符替换为字母表中前一个字符。例如,用b
替换所有c
,或用z
替换所有a
。
给定整数 ,它是可以执行的最大操作数。找到可以通过执行不超过 次操作得到的最小字典序的字符串。
如果存在索引 ,使得 ,但 ,则字符串 在字典序上小于字符串 。
输入格式
测试的第一行包含一个整数 - 测试中测试用例的数量。
每个测试用例的第一行包含两个整数 和 - 字符串 的大小和可以在字符串 上执行的最大操作次数 。
每个测试用例的第二行包含一个长度为 的小写拉丁字母字符串 。
保证所有测试用例中 的总和不超过 。
输出格式
对于每个测试用例,输出通过执行不超过 次操作可以获得的字典序最小的字符串。
测试样例
4
3 2
cba
4 5
fgde
7 5
gndcafb
4 19
ekyv
aaa
agaa
bnbbabb
aapp