public static void main(String[] args) { Scanner sc = new Scanner(System.in); String input = sc.nextLine(); String list1 = input.substring(0, input.indexOf("|")); String list2 = input.substring(input.indexOf("|") + 1); String[] link1 = list1.split(","); String[] link2 = list2.split(","); //作为结果 List<Integer> list = new LinkedList<>(); int i = 0; int j = 0; while (i < link1.length && j < link2.length) { int num1 = Integer.parseInt(link1[i]); int num2 = Integer.parseInt(link2[j]); if (num1 <= num2) { if (!list.contains(num1)) { list.add(num1); } i++; } else { if (!list.contains(num2)) { list.add(num2); } j++; } } while (i < link1.length) { int num1 = Integer.parseInt(link1[i]); if (!list.contains(num1)) { list.add(num1); } i++; } while (j < link2.length) { int num2 = Integer.parseInt(link2[j]); if (!list.contains(num2)) { list.add(num2); } j++; } System.out.println(list.toString()); }
第一题代码大概长这样,然而有个下标递增写错了,只通过了66.7%