电报加解密
编程实现
A国和B国正在陷入战火之中,双方都互派间谍,潜入对方内部,伺机行动。为了保证信息不被 泄漏,A国司令部向小猴发送了最新的军用密码的编码规则。
加密的规则:
- 电报中的小写字母,按字母表顺序替换为**后一个**对应的大写字母,如果超出字母表,则转 回到第一个字母;
- 电报中的大写字母,按字母表顺序替换为**前一个**对应的小写字母,如果超出字母表,则转 回到最后一个字母;
- 电报中的数字,按数码从小到大的顺序替换为**后一个**对应的数码,例如 0 替换为 1、 1 替换为 2、 9 替换为 0。
- 其他字符不做变化。
解密的规则为加密规则的逆过程。
例如,字母 g 以字母 H 代替,字母 N 以字母 m 代替。因此电报 gN96 经过加密之后为 Hm07,电报 Hm07 经过解密之后为 gN96。
现在,小猴收到了A国司令发来的 n 份电报信息,请你帮助小猴对这些信息进行解密,并输出** 解密后**的结果。
输入描述
第一行,包含一个正整数 n。( 1≤n≤100 )
接下来 n 行,每行包含一个字符串 si,第 i 行的字符串 si 表示小猴收到的第 i 份电报信息。 保证字符串 si 中只包含大小写英文字母、数字、空格和英文标点符号(保证只会出 现:','、'.'、':'、'!' 和 '?')。
输出描述
共 n 行,第 i 行输出一个字符串,表示第 i 份电报经过解密之后的内容。
输入样例
3
fPPE MVDL PO ZPVS FYBN! aFMJFWF JO ZPVSTFMG!
h XJTI UIF FYBN B TVDDFTT!
输出样例
Good luck on your exam! Believe in yourself!
I wish the exam a success!