import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
String s = Integer.toString(n);
String reversed = new StringBuilder(s).reverse().toString();
Set<Character> seen = new HashSet<>();
StringBuilder result = new StringBuilder();
for (char c : reversed.toCharArray()) {
if (!seen.contains(c)) {
result.append(c);
seen.add(c);
}
}
System.out.println(result.toString());
}
}
https://www.nowcoder.com/discuss/727521113110073344
思路:
- 输入处理:使用Scanner读取输入的正整数n。
- 字符串反转:将整数转换为字符串,并使用reverse方法反转字符串。
- 去重处理:遍历反转后的字符串,利用HashSet记录已经出现的字符,确保每个字符只保留第一次出现的位置。
- 结果构造:使用StringBuilder构造结果字符串,并输出结果。



京公网安备 11010502036488号