牛客的题解质量真的是远不如leetcode啊 很少看到眼前一亮的题解
这个题目要求保留大小写状态 然后又说输入保证全是小写... 黑人脸问号???
import java.util.BitSet; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); String key = in.nextLine(); String cipher = in.nextLine(); BitSet bitSet = new BitSet(); char[] dict = new char[26]; int i = 0; for (char c : key.toLowerCase().toCharArray()) { if (!bitSet.get(c)) { bitSet.set(c); dict[i++] = c; } } while (i < 26) { for (char c = 'a'; c <= 'z'; c++) { if (!bitSet.get(c)) { bitSet.set(c); dict[i++] = c; } } } int d = 'a' - 'A'; for (char c : cipher.toCharArray()) { if (Character.isLetter(c)) { System.out.print(dict[c - 'a']); } else { System.out.print(c); } } } }