题目大意
题目原文:http://uva.onlinejudge.org/external/100/10082.pdf
背景:
常见的键入错误是手放在键盘一个 rowto 的正确位置的权利。所以"Q"键入的"W"和"J"类型为"K",等等。你是要以这种方式解码消息游戏。
输入包含几行文本。每一行可以包含数字、 空格、 (除 Q,A,Z),大写的字母或标点符号 [除了背单引号 (')] 如上所示。表示输入中的 [选项卡、 BackSp、 控制等] 的单词不在标签上的键。你要立即向它上面所示的 QWERTY 键盘上的左边一个替换每个字母或函数符号。在输入中的空格应在输出中回响。
Sample Input
O S, GOMR YPFSU/
Output for Sample Input
I AM FINE TODAY
算法:
不说了上代码。(偷笑)
代码:
这里附上我的代码,你可以去这里提交你的代码验证你的代码是否正确。
View Code
#include<stdio.h> int main() { char a; while((a=getchar())!=EOF) { if(a=='`')printf(" "); else if(a=='1')printf("`"); else if(a=='2')printf("1"); else if(a=='3')printf("2"); else if(a=='4')printf("3"); else if(a=='5')printf("4"); else if(a=='6')printf("5"); else if(a=='7')printf("6"); else if(a=='8')printf("7"); else if(a=='F')printf("D"); else if(a=='G')printf("F"); else if(a==';')printf("L"); else if(a=='\'')printf(";"); else if(a=='Z')printf("'"); else if(a=='X')printf("Z"); else if(a=='C')printf("X"); else if(a=='V')printf("C"); else if(a=='B')printf("V"); else if(a=='N')printf("B"); else if(a=='M')printf("N"); else if(a==',')printf("M"); else if(a=='.')printf(","); else if(a=='9')printf("8"); else if(a=='0')printf("9"); else if(a=='-')printf("0"); else if(a=='H')printf("G"); else if(a=='J')printf("H"); else if(a=='K')printf("J"); else if(a=='L')printf("K"); else if(a=='=')printf("-"); else if(a=='Q')printf("="); else if(a=='W')printf("Q"); else if(a=='E')printf("W"); else if(a=='R')printf("E"); else if(a=='T')printf("R"); else if(a=='Y')printf("T"); else if(a=='U')printf("Y"); else if(a=='I')printf("U"); else if(a=='O')printf("I"); else if(a=='P')printf("O"); else if(a=='[')printf("P"); else if(a==']')printf("["); else if(a=='\\')printf("]"); else if(a=='A')printf("\\"); else if(a=='S')printf("A"); else if(a=='D')printf("S"); else if(a=='/')printf("."); else if(a>='a'&&a<='z')printf(" "); else printf("%c",a); } return 0; }