题目传送门:http://218.28.220.249:50015/JudgeOnline/problem.php?id=1263
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.
水到爆,但是比赛的时候被打进txt的样例坑的要死了
1 #include<stdio.h> 2 #include<string.h> 3 char a[2][6]={"Left","Right"}; 4 char a1[10]={'Q','W','E','R','T','Y','U','I','O','P'}; 5 char a2[9]={'A','S','D','F','G','H','J','K','L'}; 6 char a3[7]={'Z','X','C','V','B','N','M'}; 7 int main() 8 { 9 int t,i,h; 10 char f[10],d,c; 11 scanf("%d",&t); 12 while(t--) 13 { 14 memset(f,0,sizeof(f)); 15 scanf("%c%c%s",&c,&d,f); 16 if(d=='Q'||d=='A'||d=='Z') 17 { 18 if(strcmp(f,a[0])==0) 19 printf("No letter. "); 20 else 21 { 22 if(d=='Q') 23 printf("W "); 24 if(d=='A') 25 printf("S "); 26 if(d=='Z') 27 printf("X "); 28 } 29 continue; 30 } 31 if(d=='P'||d=='L'||d=='M') 32 { 33 if(strcmp(f,a[1])==0) 34 printf("No letter. "); 35 else 36 { 37 if(d=='P') 38 printf("O "); 39 if(d=='L') 40 printf("K "); 41 if(d=='M') 42 printf("N "); 43 } 44 continue; 45 } 46 for(i=0;i<10;i++) 47 { 48 if(d==a1[i]) 49 { 50 if(strcmp(f,a[0])==0) 51 printf("%c ",a1[i-1]); 52 else 53 printf("%c ",a1[i+1]); 54 } 55 } 56 for(i=0;i<9;i++) 57 { 58 if(d==a2[i]) 59 { 60 if(strcmp(f,a[0])==0) 61 printf("%c ",a2[i-1]); 62 else 63 printf("%c ",a2[i+1]); 64 } 65 } 66 for(i=0;i<7;i++) 67 { 68 if(d==a3[i]) 69 { 70 if(strcmp(f,a[0])==0) 71 printf("%c ",a3[i-1]); 72 else 73 printf("%c ",a3[i+1]); 74 } 75 } 76 77 } 78 return 0; 79 }