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.hasNextInt()) { // 注意 while 处理多个 case int num = in.nextInt(); int newNum = notContainDuplicateNumber(num); System.out.println(newNum); } } private static int notContainDuplicateNumber(int num) { HashSet<Integer> set = new HashSet<>(); Deque<Integer> stack = new ArrayDeque<Integer>(); while (num > 0) { int bitNum = num % 10; if (!set.contains(bitNum)) { set.add(bitNum); stack.addLast(bitNum); } num = num / 10; } int result = 0; int count = 0; while (!stack.isEmpty()) { int bitNum = stack.removeLast(); result += bitNum * Math.pow(10, count); count += 1; } return result; } }