STL大法好
题目传送门:[NOIP2006 普及组] 明明的随机数 - 洛谷
摘自题解:
%%%大佬
啥时间我忘记了如何遍历每个元素
直到我想到了empty()和erase()和万恶之源begin()!
erase(指针)表示删除指向..的元素
很好,右手就行
while(!s.empty()){
cout<<*s.begin()<<" ";//begin()属于迭代器
s.erase(s.begin());//直接填入指针QWQ
}
AC CODE
#include<iostream>
#include<set>
using namespace std;
int main(){
int n,q;
set<int> s;
cin>>n;
for(int i=1;i<=n;i++){
cin>>q;
s.insert(q);
}
cout<<s.size()<<endl;
while(!s.empty()){
cout<<*s.begin()<<" ";
s.erase(s.begin());
}
return 0;
}