C++的福音
看到这个题目就想到直接用set来做
set:所有元素都会在插入时自动被排序

set和multiset区别:

  1. set不允许容器中有重复的元素
  2. multiset允许容器中有重复的元素

AC代码

#include<iostream>
#include<set>
using namespace std;
int n;
set<int> m;
int main(){
    cin>>n;
    while(n--){
        int x;
        cin>>x;
        m.insert(x);
    }
    cout<<m.size()<<endl;
    for(set<int>::iterator it=m.begin();it!=m.end();it++){
        cout<<*it<<" ";
    }
    return 0;
}