解题思路:利用STL中的unique()和sort()分别进行去重和排序
注意事项:
参考代码:
#include <iostream>
#include <deque>
#include <algorithm>
#include <numeric>
#include <iterator>
#include <string>
#include <cmath>
#include <cstdlib>
#include <string.h>
using namespace std;
int main()
{
deque<int> q[1001];
int n,k=0;
cin>>n;
while(n!=0)
{
for(int i=0;i<n;i++)
{
int num;
cin>>num;
q[k].push_back(num);
}
k++;
cin>>n;
}
for(int i=0;i<k;i++)
{
deque<int>::iterator lt;
sort(q[i].begin(),q[i].end());
lt=unique(q[i].begin(),q[i].end());
q[i].erase(lt,q[i].end());
}
for(int i=0;i<k;i++)
{
cout<<q[i].size()<<endl;
copy(q[i].begin(),q[i].end(),ostream_iterator<int>(cout," "));
cout<<endl<<endl;
}
return 0;
}
0.0分
0 人评分