提取不重复的整数

题目描述

输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。

输入描述:

输入一个int型整数

输出描述:

按照从右向左的阅读顺序,返回一个不含重复数字的新的整数

输入例子:
9876673
输出例子:
37689

如果返的整数以0开头,去掉0;

如 intput:1010   output:1

如果为0000,输出0

 1 import java.util.*;
 2
 3 public class Main{
 4     public static void main(String[] args){
 5         Scanner in = new Scanner(System.in);
 6
 7         while(in.hasNext()){
 8             String s = in.nextLine();
 9             char[] c = s.toCharArray();
10             Set<Character> set = new LinkedHashSet<Character>();//顺序去重输出
11
12             for(int i= c.length-1;i>=0;i--){
13                 set.add(c[i]);
14             }
15             if(c[s.length()-1]==‘0‘){
16                 if(set.size()!=1){
17                      set.remove(‘0‘);
18                      for(Character ch : set){
19                         System.out.print(ch);
20                     }
21                 }
22                 else
23                     System.out.println(0);
24             }
25             else
26                 for(Character ch : set){
27                         System.out.print(ch);
28                     }
29         }
30     }
31 }

测试用例,题中都不说清楚的么 。。

				
时间: 2024-10-06 18:55:41

提取不重复的整数的相关文章

华为初级——提取不重复的整数

描述:输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数. 知识点:数组 题目来源:内部整理 练习阶段:初级 运行时间限制:10sec 内存限制:128MByte 输入:输入一个int型整数 输出:按照从右向左的阅读顺序,返回一个不含重复数字的新的整数 样例输入:9876673 样例输出:37689 源程序: #include<iostream> using namespace std; int main() { void getNoRepeatNumber(int

华为机试:提取不重复的整数

题目描述 输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数. 输入描述: 输入一个int型整数 输出描述: 按照从右向左的阅读顺序,返回一个不含重复数字的新的整数 示例1 输入 9876673 输出 37689 Java:取巧,提取一个数输出一个数 1 import java.util.Scanner; 2 3 public class Main { 4 5 public static void main(String[] args) { 6 Scanner sc=n

提取不重复的整数(桶排序思想)

描述 输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数. 知识点 数组 运行时间限制 10M 内存限制 128 输入 输入一个int型整数 输出 按照从右向左的阅读顺序,返回一个不含重复数字的新的整数 如果返的整数以0开头,去掉0: 如 intput:1010 output:1 样例输入 9876673 样例输出 37689 #include <iostream> using namespace std; void ReverseSet(int num) { int

华为机试 提取不重复的整数

题目描述 输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数. 输入描述: 输入一个int型整数 输出描述: 按照从右向左的阅读顺序,返回一个不含重复数字的新的整数 输入 9876673 输出 37689 #include<iostream> #include<vector> using namespace std; int main(){ int num,check[10]={0}; vector<int> noRepeat; cin>

【华为机试练习】提取不重复的整数

题目描述输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数.输入描述:输入一个int型整数输出描述:按照从右向左的阅读顺序,返回一个不含重复数字的新的整数 解法(C语言版): #include<stdio.h> int main() { int n, m, i, j = 0; int temp[10], flag[10] = {0}; scanf("%d", &n); while(n ) { i = n % 10; if(flag[i] =

随机生成前N个不重复的整数

package cn.ds; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; import java.util.Random; /** * 测试随机生成前N个不重复的整数 *

透视表提取不重复记录(1)-出现值

透视表提取不重复记录(1)-出现值 设计要点:不重复.数据透视表 阿金:其实提取不重复记录,俺还有办法. 秀秀:什么? 阿金:数据透视表. 秀秀:又是数据透视表? 阿金:对,建立一个数据透视表,把不想重复的字段都放在行区域,比如"物品名称",这样就可以得到出现过的名称的唯一值. 秀秀:噢?也挺简单,要是想找到每个物品的所有分类呢? 阿金:自己想想? 秀秀:哼!又拿一把-- 透视表提取不重复记录(1)-出现值

透视表提取不重复记录(5)-不能用于下拉选项

透视表提取不重复记录(5)-不能用于下拉选项 设计要点:不重复.数据透视表.下拉选项 秀秀:哼,透视表虽然是很强,但是有很多软肋呢! 阿金:嗯?--,你对透视表能有这么深入的了解?是你不会用吧. 秀秀:且!你看,它虽然可以自动提取出现值,但是不能把它作为下拉选项的数据源. 阿金:噢?俺看看.嗯,可能是它认为数据透视表的右下区域都有数据,所以单元格不为空,如果用counta()函数不能判断有几项. 秀秀:哎哟!透视表不是你的强项么?连这个都不了解? 阿金:啊,说明俺对透视表的了解还不够深入啊. 秀

一个数组中有65535个数不重复的大于0的整数(即:0~~65535内所有不重复的整数,数序是杂乱无章的), 用最快的方式排序

备注:如果这个问题你考虑到用元素对比就大错特错了 当然这个算法还不是最优的,不能代表普遍性.但可以引申,总体还是这个思路,无非就是“填空”操作 public class OrderLink { /** * 一个数组中有65535个数不重复的大于0的整数(即:0~~65535内所有不重复的整数,数序是杂乱无章的), * 用最快的方式排序 * @param args */ public static void main(String[] args) { //例如:一个数组中有65535个数不重复的大