3905 - 贪婪的小明

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 128 MB

贪婪的小明

     小明自从加入ACM以后,每天都在努力的学习,他经常翻阅一些书籍,寻找各种资料。在一次偶然的机会,小明找到了一本很古老的书,在书中他意外的得到了一张藏宝图,他根据这张到藏宝图上的路线来到了一个城堡中,在这座城堡中有一个房间,房间里都有一个宝藏,贪婪的小明想把宝藏都带走,但是门上有一把密码锁,他发现密码锁的密码都是一个由 a~z 组成的字符串,密码锁上面有一个提示的字符串,另外,在藏宝图上他还发现提示上的字符串和密码的每一位字符对应关系符合  a -> m、b -> n、c -> o ... m -> y、n -> z、o -> a、p -> b ...  y -> k、z -> l ,这下把小明难住了,但是小明想把宝藏拿走,你能帮小明拿到宝藏么?

题目输入

第一行输入一个正整数n,表示有n组测试数据。

下面有n行 (0 < n <= 1000)

每行输入一个字符串,表示密码的提示!

字符串的长度不大于100

题目输出

在每组数组相对应的行

输出正确的密码(不要有多余的输出)

每组数据占一行

输入/输出样例

输入格式

2
wzwysoqa
hcdoqasf

输出格式

ilikeacm
topacmer

C语言解答

#include <stdio.h>
#include <string.h>

int main()
{
//	freopen("ceshi.txt","r",stdin);
//	freopen("ceshiout.txt","w",stdout);
	int t;
	scanf("%d",&t);
	while(t--)
	{
		char s[110];
		scanf("%s",s);
		for(int i = 0;i < strlen(s);i++)
		{
			if(s[i] >= 'a' && s[i] <= 'n')
			{
				s[i] += 12;
			}
			else if(s[i] >= 'o' && s[i] <= 'z')
			{
				s[i] += -14;
			}
		}
		printf("%s\n",s);
	}
	return 0;
} 

C++解答

#include <stdio.h>
#include <string.h>

int main()
{
//	freopen("ceshi.txt","r",stdin);
//	freopen("ceshiout.txt","w",stdout);
	int t;
	scanf("%d",&t);
	while(t--)
	{
		char s[110];
		scanf("%s",s);
		for(int i = 0;i < strlen(s);i++)
		{
			if(s[i] >= 'a' && s[i] <= 'n')
			{
				s[i] += 12;
			}
			else if(s[i] >= 'o' && s[i] <= 'z')
			{
				s[i] += -14;
			}
		}
		printf("%s\n",s);
	}
	return 0;
}