描述
对于给定的正整数 n ,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。
输入描述:
在一行上输入一个正整数 n(1≦n≦108) 代表给定的整数。
保证 n 的最后一位不为 0 。
保证 n 的最后一位不为 0 。
输出描述:
在一行上输出一个整数,代表处理后的数字。
解法一(java):
import java.util.Scanner;
import java.util.*;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
String input = in.next();
int len = input.length();
List<Integer> list = new ArrayList<>();
for (int i = len-1 ; i >= 0; i--) {
int v = input.charAt(i)-'0';
if (!list.contains(v)) {
System.out.print(v);
list.add(v);
}
}
}
}
思路:输入的一个字符串从右至左开始遍历字符串,定义一个集合如果集合中不存在某一个元素就打印并将该元素保存到集合中。