1263: rqy的键盘
时间限制: 1 秒 内存限制: 128 MB
提交: 226 解决: 132
提交 状态
题目描述
rqy在和妹子约会,突然女票打来电话。rqy骗女票他在写代码。女票为了证实,问他键盘上F键左边是哪个键。
你能否帮助rqy回应女票的质问?不然他可就要写思想汇报了...
输入
输入数据第一行是一个整数 T(1≤T≤10000),表示测试数据的组数。
之后每一行先是一个大写字母X ,之后为一个字符串Left或Right,分别表示询问X键的左边或右边是哪个键。
输出
如果结果为一个字母键,输出该字母;否则输出No letter.。
样例输入
3
A Right
B Left
Q Left
样例输出
S
V
No letter.
题目来源:http://218.28.220.249:50015/JudgeOnline/problem.php?id=1263
题意描述:输入一个大写字母,然后输入一个表示左右的单词,输出该字母在键盘上左边或者右边的字母,如果没有则输出No letter.
解题思路:先将键盘上的字母按顺序存入一个字符串中,然后遇到左边或者右边没有字母时存入一个‘0’字符标记一下,读入一组数据,然后输出对应的字母,如果遇到‘0’字符,则输出:No letter.
代码:#include<stdio.h>
int main()
{
int i,j,k,m,n,t;
char s2,s1[50],s[60]={'0','Q','W','E','R','T','Y','U','I','O','P','0','A','S','D','F','G','H','J','K','L',
'0','Z','X','C','V','B','N','M','0'};
while(scanf("%d",&t)!=EOF)
{
while(t--)
{
getchar();
scanf("%c",&s2);
getchar();
scanf("%s",s1);
for(i=0;i<50;i++)
{
if(s2==s[i])
{
if(s1[0]=='R')
{
if(s[i+1]=='0')
{
printf("No letter.\n");
}
else
printf("%c\n",s[i+1]);
}
if(s1[0]=='L')
{
if(s[i-1]=='0')
{
printf("No letter.\n");
}
else
printf("%c\n",s[i-1]);
}
}
}
}
}
return 0;
}