思路:
出现的数字在之内,又要排序又要去重,桶排序最合适了。
1.出现的数字赋值为1,不管出现几次都是1,这就完成了去重。
2.统计第一次出现的数字的个数就是去重后剩余的个数。
3.从枚举,如果它的值为1,就输出,完成了排序。
Code:
#include<bits/stdc++.h> #define js ios::sync_with_stdio(false);cin.tie(0);cout.tie(0) using namespace std; typedef long long ll; int a[1005],cnt; int main() { js; int n,x; cin>>n; for(int i=1;i<=n;++i) { cin>>x; if(a[x]) continue; a[x]=1; ++cnt; } cout<<cnt<<"\n"; for(int i=1;i<=1000;++i) { if(a[i]) cout<<i<<" "; } cout<<"\n"; return 0; }