题解 | #字符串加解密#
字符串加解密
https://www.nowcoder.com/practice/2aa32b378a024755a3f251e75cbf233a
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) {
BufferedReader r = new BufferedReader(new InputStreamReader(System.in));
String aEn, bDe;
char[] ch1 = new char[] {'z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'a'};
char[] ch2 = new char[] {'9', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '0'};
try {
aEn = r.readLine();
bDe = r.readLine();
} catch (IOException e) {
throw new RuntimeException(e);
}
char[] chsEn = aEn.toCharArray();
char[] chsDe = bDe.toCharArray();
char[] ansEn = new char[chsEn.length];
char[] ansDe = new char[chsDe.length];
int i = 0, t = 0;
while (i < chsEn.length) {
if ((chsEn[i] - 'a' | 'z' - chsEn[i]) > 0) {
t = chsEn[i] - 'a' + 1;
ansEn[i] = (char) (ch1[t + 1] - 32);
}
if ((chsEn[i] - 'A' | 'Z' - chsEn[i]) > 0) {
t = chsEn[i] - 'A' + 1;
ansEn[i] = ch1[t + 1];
}
if ((chsEn[i] - '0' | '9' - chsEn[i]) > 0) {
t = chsEn[i] - '0' + 1;
ansEn[i] = ch2[t + 1];
}
i++;
}
String ans = new String(ansEn);
i = 0;
do {
if ((chsDe[i] - 'a' | 'z' - chsDe[i]) > 0) {
t = chsDe[i] - 'a' + 1;
ansDe[i] = (char) (ch1[t - 1] - 32);
}
if ((chsDe[i] - 'A' | 'Z' - chsDe[i]) > 0) {
t = chsDe[i] - 'A' + 1;
ansDe[i] = ch1[t - 1];
}
if ((chsDe[i] - '0' | '9' - chsDe[i]) > 0) {
t = chsDe[i] - '0' + 1;
ansDe[i] = ch2[t - 1];
}
i++;
} while (i < chsDe.length);
ans = ans + "\n" + new String(ansDe);
System.out.print(ans);
}
}

