时间限制:C/C++/Rust/Pascal 3秒,其他语言6秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
设字符串

是由长度为

的小写字母组成的字符串。字符串

的循环同构是指通过循环移动得到的所有字符串。具体来说,如果将字符串

的第

个字符移到字符串的前面,其余字符依次后移,则得到的字符串为循环同构字符串。循环同构字符串的集合记作
)
。
例如,对于字符串

,其循环同构字符串集合为:
%20%3D%20%5C%7B%5Ctext%7B%22abc%22%7D%2C%20%5Ctext%7B%22bca%22%7D%2C%20%5Ctext%7B%22cab%22%7D%5C%7D)
对于字符串

,其循环同构字符串集合为:
给定一个仅有小写字母字符组成的字符串

,你的任务是找出
)
中字典序第

小的字符串并输出。
输入描述:
本题包含多组测试数据。
第一行给出一个正整数
,表示数据的组数。
对于每组数据,第一行给出两个整数
,表示
串的长度以及所求的
。
第二行给出一个仅由小写字母表示的长度为

的字符串

,具体意义如题所示。
数据保证

的和不超过

。
输出描述:
输出
行,第
行输出第
个测试数据所要求的字符串。
示例1
输入
复制
3
4 3
abcc
5 2
aabba
5 1
cbaca