题目描述
把手放在键盘上时,稍不注意就会往右错一位。这样,输入Q会变成输入W,输入J会变成输入K等。键盘如图所示。
输入输出
输入一个错位后敲出的字符串(所有字母均 大写),输出打字员本来想打出的句子。输入保证合法,即一定是错位之后的字符串。例如输入中不会出现大写字母A。
样例输入
O S, GOMR YPFSU/
样例输出
I AM FINE TODAY.
代码
#include <bits/stdc++.h>
using namespace std;
char a[50] = {'`', '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '-', '=','Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', 'O',
'P', '[', ']', '\\', 'A', 'S', 'D', 'F', 'G', 'H', 'J', 'K', 'L', ';', '\'', 'Z', 'X', 'C', 'V', 'B', 'N',
'M', ',', '.', '/'};
int main() {
char c;
while ((c = getchar()) != EOF) {
if (c == ' ' || c == '\n') {//注意回车
printf("%c",c);
} else {
for (int j = 0; j < 47; j++) {
if (a[j] == c) {
printf("%c", a[j - 1]);
}
}
}
}
return 0;
}