ZZULIOJ 1155: 字符串比较 多实例,Java
题目描述
比较字符串大小,但比较的规则不同字典序规则。字符比较新规则如下:A < a < B < b < ………… < Z < z。
输入
输入数据包含多个测试实例,每个测试实例占两行,每一行有一个字符串(只包含大小写字母, 长度小于10000)。
输出
如果第一个字符串小于第二个,输出YES,否则,输出NO。
注意:A < a < B < b < ………… < Z < z。
样例输入 Copy
abc
Bbc
Ab
a
ABcef
ABce
样例输出 Copy
YES
YES
NO
import java.io.*;
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
while (sc.hasNext()) {
char[] a = sc.next().toCharArray();
char[] b = sc.next().toCharArray();
for (int i = 0; i < a.length; i++) {
if (a[i] >= 'a') a[i] = (char) ((a[i] - 'a') * 2 + 1);
else a[i] = (char) ((a[i] - 'A') * 2);
}
for (int i = 0; i < b.length; i++) {
if (b[i] >= 'a') b[i] = (char) ((b[i] - 'a') * 2 + 1);
else b[i] = (char) ((b[i] - 'A') * 2);
}
int ok = String.valueOf(a).compareTo(String.valueOf(b));
if (ok < 0) bw.write("YES\n");
else bw.write("NO\n");
bw.flush();
}
bw.close();
}
}