题目涉及数组中数据的“去重”、“排序”,题目中数据量不是很大,可以用桶排序的思想,免去去重,排序从小到大输出即可。数据量不大这是选用桶排序的关键。
#include<iostream>
using namespace std;
int main()
{
int array[1001]={0};
int n,nub=0,t;
cin>>n;
for(int i=0;i<n;i++){
int temp;
cin>>temp;
array[temp]++;//桶排序的思想
}
for(int i=0;i<1001;i++){
if(array[i]!=0){
nub++;
t=i;//找最后一个数,最后一个数后面不能有空格,最后单独输出
}
}
cout<<nub<<endl;//数量
for(int i=0;i<t;i++){
if(array[i]!=0){
cout<<i<<" ";
}
}
cout<<t;//单独输出
}