#P13311. [GCJ 2012 Qualification] Speaking in Tongues

[GCJ 2012 Qualification] Speaking in Tongues

Description

我们在 Google 发明了一种最棒的语言,名叫 Googlerese。要将文本翻译成 Googlerese,我们会把任意消息中的每一个英文小写字母替换为另一个英文小写字母。这个映射是一一对应且满射的,即同一个输入字母总会被替换为同一个输出字母,不同的输入字母总会被替换为不同的输出字母。一个字母可以被替换为其自身。空格保持不变。

举个例子(这里有个提示!),我们酷炫的翻译算法包括如下三个映射:'a' \to 'y','o' \to 'e','z' \to 'q'。这意味着 "a zoo" 会变成 "y qee"。

Googlerese 基于最优的替换映射,并且我们永远不会改变它。在每一个测试用例中都是一样的。我们不会告诉你剩下的映射规则,否则题目就太简单了,但下面有一些例子或许会帮到你。

现在,给定一些 Googlerese 的文本,你能把它翻译回普通文本吗?

Input Format

输入的第一行为测试用例数 TT。接下来有 TT 行,每行一个测试用例。

每一行是一个 Googlerese 语句 GG,由一个或多个单词组成,单词仅包含小写字母 'a' 到 'z'。相邻单词之间恰好有一个空格,且每行的开头和结尾都没有空格。

Output Format

对于每个测试用例,输出一行,格式为 "Case #XX: SS",其中 XX 是测试用例编号,SS 是能翻译成 GG 的普通文本。

3
ejp mysljylc kd kxveddknmc re jsicpdrysi
rbcpc ypc rtcsra dkh wyfrepkym veddknkmkrkcd
de kr kd eoya kw aej tysr re ujdr lkgc jv
Case #1: our language is impossible to understand
Case #2: there are twenty six factorial possibilities
Case #3: so it is okay if you want to just give up

Hint

限制(15 分)

  • 仅有一个测试点,且结果可见。
  • 1T301 \leq T \leq 30
  • G\mathbf{G} 最多包含 100 个字符。
  • 不保证文本一定是有效的英语。

翻译由 ChatGPT-4.1 完成。