实际上如果ASCII记得很熟悉的话,这道题算不上中等难度:
package huawei;
import java.util.*;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
while (in.hasNext()) { // 注意 while 处理多个 case
String a = in.nextLine();
String b = in.nextLine();
char[] line1 = a.toCharArray();
char[] line2 = b.toCharArray();
StringBuilder stringBuilder1 = new StringBuilder();
for (char c : line1) {
if (c >= 65 && c < 90) {
stringBuilder1.append(Character.toLowerCase((char) (c + 1)));
} else if (c == 90) {
stringBuilder1.append("a");
} else if (c >= 97 && c < 122) {
stringBuilder1.append(Character.toUpperCase((char) (c + 1)));
} else if (c == 122) {
stringBuilder1.append("A");
} else if (c >= 48 && c < 57) {
stringBuilder1.append(Character.toLowerCase((char) (c + 1)));
} else if (c == 57) {
stringBuilder1.append("0");
} else {
stringBuilder1.append(Character.toUpperCase(c));
}
}
StringBuilder stringBuilder2 = new StringBuilder();
for (char c : line2) {
if (c > 65 && c <= 90) {
stringBuilder2.append(Character.toLowerCase((char) (c - 1)));
} else if (c == 65) {
stringBuilder2.append("z");
} else if (c > 97 && c <= 122) {
stringBuilder2.append(Character.toUpperCase((char) (c - 1)));
} else if (c == 97) {
stringBuilder2.append("Z");
} else if (c > 48 && c <= 57) {
stringBuilder2.append(Character.toLowerCase((char) (c - 1)));
} else if (c == 48) {
stringBuilder2.append("9");
} else {
stringBuilder2.append(Character.toUpperCase(c));
}
}
System.out.println(stringBuilder1);
System.out.println(stringBuilder2);
}
}
}