#include<bits/stdc++.h>
using namespace std;
set<int> S;
int main(){
for (int i=1; i<=100; i++){
S.insert(i);
}
int cnt = 100;
for (set<int>::iterator it = S.begin(); S.size()>0 && it!=S.end();){
printf("%d ", *it);
S.erase(it++);
S.erase(cnt--);
}
}
上面这个没问题
下面这个爆了
#include<bits/stdc++.h>
using namespace std;
set<int> S;
int main(){
for (int i=1; i<=100; i++){
S.insert(i);
}
int cnt = 100;
for (set<int>::iterator it = S.begin(); it!=S.end();){
printf("%d ", *it);
S.erase(it++);
S.erase(cnt--);
}
}