#include<bits/stdc++.h>
using namespace std;
list<pair<int,int> >f;
int main(){
int n;
scanf("%d",&n);
f.push_front(make_pair(3,-1));
for(int i=1;i<=n;i++){
int a;
scanf("%d",&a);
f.push_front(make_pair(a,i));
}
while(f.size()>1){
auto b=f.begin()++;
for(auto iter=b;iter!=f.end();iter++){
auto itr=iter--;
if(iter.first!=itr.first){
cout<<iter.second<<" ";
f.erase(iter);
}
}
puts(" ");
}
return 0;
}
为什么第18,19行不可以访问first,second?
如果访问的话咋做?