定义字符串的以下几种操作:
- reverse(A)获得A字符串的逆序字符串,例如reverse("abc") = "cba"
- shuffle(A)获得A随机重排的字符串,例如shuffle("dog") ∈ {"dog", "dgo", "odg", "ogd", "gdo", "god"}
- merge(A1, A2),合并A1和A2两个字符串,合并过程中只保证A1和A2本身字母的顺序,例如merge("qwe", "asd")的可能结果有很多, “qweasd”和“qwased”都是可能的取值。现在给定一个字符串S,S ∈merge(reverse(A), shuffle(A))。求以字母表顺序排序的A的最小值。