题目描述
【题目描述】
假设您需要加密一条绝密消息,如“SEND MORE MONKEYS”。您可以使用简单的替换密码,其中字母表中的每个字母都被替换为不同的字母。然而,这些密码很容易被破解,因为字母表中的某些字母(如“E”、“S”和“A”)比其他字母(如‘Q’、‘Z’和‘X’)出现得更频繁。更好的加密方案会改变每个字母的替换。一种这样的系统是自动密钥密码。
要加密消息,您首先选择一个秘密单词,比如“ACM”,然后在消息前面加上前缀。这个较长的字符串被截断为消息的长度并称为密钥,密钥的第n个字母用于加密原始消息的第n字母。通过将密钥中的每个字母视为消息中相应字母的循环移位值来进行加密,其中“a”表示移位0,“B”表示移位1等等。使用“ACM”作为密码,我们将按如下方式加密消息:
注意,消息中的字母“E”在第一次遇到时被加密为“G”(因为密钥中的对应字母是“C”,表示移位2),但在接下来的两次中被加密为Q和S。
你的任务很简单:给定密文和密码,请解密出原始信息。
【输入】
输入由两行组成。第一行为密文,第二行为密钥(可能比密文长)。两行都只包含大写字母。密文和密钥单的长度都在1到500个字母之间。
【输出】
显示使用给定密码生成给定密文的原始消息。
【样本输入1】
SGZVQBUQAFRWSLC
ACM
【样本输出1】
SENDMOREMONKEYS
样例输入 复制
SGZVQBUQAFRWSLC
ACM
样例输出 复制
SENDMOREMONKEYS