P16853 [GKS 2021 #E] Shuffled Anagrams
题目描述
设 $S$ 是一个仅包含英文字母的字符串。$S$ 的一个**异序词**(anagram)是指任何包含与 $S$ 完全相同的字母(每个字母出现次数相同)但顺序不同的字符串。例如,单词 `kick` 的异序词包括 `kcik` 和 `ckki`。
现在,记 $S[i]$ 为 $S$ 中的第 $i$ 个字母。称 $S$ 的一个异序词 $A$ 是**洗牌**(shuffled)的,当且仅当对于所有 $i$,$S[i] \ne A[i]$。因此,例如 `kcik` 不是 `kick` 的洗牌异序词,因为两者第一个和第四个字母相同。而 `ckki` 被认为是 `kick` 的洗牌异序词,`ikkc` 也是。
给定任意字符串 $S$,你的任务是输出任意一个洗牌异序词,如果无法做到则输出 `IMPOSSIBLE`。
输入格式
输入的第一行给出测试用例的数量 $T$。接下来有 $T$ 个测试用例。每个测试用例由一行字符串组成,该字符串由英文字母构成。
输出格式
对于每个测试用例,输出一行,格式为 `Case #x: y`,其中 $x$ 是测试用例编号(从 $1$ 开始),$y$ 是该测试用例字符串的一个洗牌异序词,如果不存在则输出 `IMPOSSIBLE`。
说明/提示
在测试用例 #1 中,`tarts` 是 `start` 的一个洗牌异序词,因为两个字符串在每一个位置上字母都不相同。另一种可能的解是 `trsta`(但只需提供一个解即可)。然而,在测试用例 #2 中,无法将 `jjj` 重排成洗牌异序词,因此输出 `IMPOSSIBLE`。
### 限制条件
$1 \le T \le 100$。
所有输入的字母均为小写英文字母。
**测试集 1**
$1 \le S$ 的长度 $\le 8$。
**测试集 2**
$1 \le S$ 的长度 $\le 10^4$。
翻译由 DeepSeek V4 Pro 完成