CF1935A Entertainment in MAC
题目描述
恭喜你被录取到了 Master's Assistance Center!然而,你在课堂上感到非常无聊,厌倦了无所事事,于是你为自己想出了一个游戏。
给定一个字符串 $s$ 和一个偶数 $n$。你可以对其进行两种操作:
1. 将字符串 $s$ 的反转字符串添加到 $s$ 的末尾(例如,如果 $s = $ cpm,操作后 $s = $ cpmmpc)。
2. 将当前字符串 $s$ 反转(例如,如果 $s = $ cpm,操作后 $s = $ mpc)。
要求你在恰好进行 $n$ 次操作后,得到字典序最小的字符串。注意,你可以以任意顺序选择不同类型的操作,但总共必须恰好进行 $n$ 次操作。
$^\dagger$ 字符串 $a$ 的字典序小于字符串 $b$ 当且仅当满足以下条件之一:
- $a$ 是 $b$ 的前缀,且 $a \ne b$;
- 在 $a$ 和 $b$ 第一个不同的位置,$a$ 的字母在字母表中比 $b$ 的对应字母更靠前。
输入格式
每个测试点包含多组测试用例。第一行包含一个整数 $t$($1 \leq t \leq 500$)——测试用例的数量。接下来是每个测试用例的描述。
每个测试用例的第一行包含一个偶数 $n$($2 \leq n \leq 10^9$)——对字符串 $s$ 进行的操作次数。
每个测试用例的第二行包含一个字符串 $s$($1 \leq |s| \leq 100$),仅由小写英文字母组成——要进行操作的字符串。
输出格式
对于每个测试用例,输出一行,表示经过恰好 $n$ 次操作后可以得到的字典序最小的字符串。
说明/提示
在第一个测试用例中,你可以对字符串 $s$ 进行 $4$ 次第二种操作(即反转字符串)。这样字符串 $s$ 会保持为 cpm。
在第二个测试用例中,你可以这样操作:
- 先进行一次第二种操作(反转字符串 $s$),此时 $s$ 变为 birg。
- 再进行一次第一种操作(将反转后的 $s$ 添加到末尾),此时 $s$ 变为 birggrib。
由 ChatGPT 4.1 翻译