题解 | #提取不重复的整数#

提取不重复的整数

https://www.nowcoder.com/practice/253986e66d114d378ae8de2e6c4577c1

简单的题,就不写思路了

第一种方法:按字符串处理

import java.util.Arrays;
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNext()) { // 注意 while 处理多个 case
            String a = in.nextLine();
            String out = "";
            for (int i = a.length() - 1; i >= 0; i--) {
                String si = Character.toString(a.charAt(i));
                if (!out.contains(si)) {
                    out = out.concat(si);
                }
            }
            System.out.println(out);
        }
    }
}

第二种方法:按整数处理(使用while循环取余的方式取数字,看起来比较有技术性,但是在去重环节还是要用字符串)

import java.util.Arrays;
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNext()) { // 注意 while 处理多个 case
            int a = in.nextInt();
            int out = 0;
            while (a!=0){
                int ai = a%10;
                if (!Integer.toString(out).contains(Integer.toString(ai))){
                    out=out*10+ai;
                }
                a=a/10;
            }
            System.out.println(out);
        }
    }
}

全部评论

相关推荐

重生2012之我是java程序员:换个稍微正式点的照片吧
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务