跟紫书第三章那道uva题并不太一样,WA三次,最后才知道是要分成三组,呃
#include <cstdio>
#include <cstring>
char a[105];
char b[3][11] = {"qwertyuiop","asdfghjkl;","zxcvbnm,./"};//uva10082是直接一个一维数组
int main() {
scanf ("%s", a);
if (a[0] == 'R') {
scanf ("%s", a);
int n = strlen (a);
for (int i = 0; i < n; i ++) {
for (int j = 0; j < 3; j ++) {
for (int k = 1; k < 10; k ++) {
if (a[i] == b[j][k]) {
printf ("%c", b[j][k-1]);
}
}
}
}
} else {
scanf ("%s", a);
int n = strlen (a);
for (int i = 0; i < n; i ++) {
for (int j = 0; j < 3; j ++) {
for (int k = 0; k < 10; k ++) {
if (a[i] == b[j][k]) {
printf ("%c", b[j][k+1]);
}
}
}
}
}
puts ("");
return 0;
}