专栏导读
本专栏收录于 《华为OD机试(JAVA)真题(E卷+D卷+A卷+B卷+C卷)》 。
刷的越多,抽中的概率越大,私信javapub,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新,全天CSDN在线答疑。
提取不重复的整数
题目描述
输入一个 int 型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。保证输入的整数最后一位不是 0。
数据范围:1 ≤ n ≤ 10^8
输入描述
输入一个 int 型整数。
输出描述
按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。
示例
输入
9876673
输出
37689
Java 编程
package cn.net.javapub.demo2.demo;import java.util.*;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);while (sc.hasNext()) {// 使用HashSet来判断是否是不重复的HashSet<Integer> hs = new HashSet<>();int target = sc.nextInt();// 获取代求解的值while (target != 0) { // 求解每位上面的整数int temp = target % 10;if (hs.add(temp)) // 如果能加入,就是说明没有重复System.out.print(temp);target /= 10;// 除10能去掉最右边的数字}System.out.println();}}
}
展示效果:
🏆下一篇: 华为OD机试 - 合并表记录(Java 2024 E卷 100分)
🏆本文收录于, 搬砖工逆袭Java架构师
刷的越多,抽中的概率越大,私信javapub,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新,全天CSDN在线答疑。