如何访问和清除多集中的倒数第二个元素?

问题描述

我最近试图从多集容器中访问倒数第二个元素。在这里,我想首先从容器中打印出倒数第二个元素,然后从容器中删除它。这个过程一直持续到容器的大小达到1。

下面给出了我到目前为止用于该过程的方法-

int n;cin>>n;
multiset<int>st;
for(int i=0;i<n;++i)
{
    int x;cin>>x;st.insert(x);
}
while(st.size()!=1)
{
    auto it=st.rbegin();
    prev(it,1);
    cout<<*it<<" ";
    st.erase(*it);
} 

在这里,我对给定案例的预期结果是-

6
0 0 1 0 1 1

ans- 1 1 0 0 0

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)