上代码
//import java.util.Random;
import java.util.Scanner;
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scanner= new Scanner(System.in);
int n = scanner.nextInt();
int[] arr = new int[n];
// Random random = new Random();
for(int i=0;i<arr.length;i++) {
arr[i] = scanner.nextInt(); //因为题目要的是手写输入样例;用下面的不会过
//random.nextInt(1000)+1; //随机生成n个1~1000的数
}
int count = 0; //用来找到相同数的数量
for(int i=0;i<arr.length;i++) {
for(int j=0;j<arr.length;j++) {
if(i==j || i==0) { //避免自身,或者是被0标记的相同的数;就跳过
break;
}else if(arr[i] == arr[j]) {
arr[j] = 0; //给后面相同的数标记为0
count++; //每找到一个,加一次;
}
}
}
int bt = n-count; //总数减去相同的数就是不同的数的数量
int[] arrs = new int[bt];//用来存储不同的数
count = 0;
for(int i=0;i<arr.length;i++) {
if(arr[i] != 0) {
arrs[count] = arr[i]; //不是被标记得数,就放到新数组。
count++;
}
}
System.out.println(bt); //输出不同数的个数
Arrays.sort(arrs); //排序
for(int i=0;i<arrs.length;i++) {
System.out.print(arrs[i]+" ");
}
}
}
