网上冲浪无意看到的qaq
现在有一个栈,有出栈和入栈的基本操作,还有求当前栈中的最小值
不知道对不对的code
#include <queue>
#include <cstring>
#include <stack>
#include <map>
#include <iostream>
#include <algorithm>
using namespace std;
priority_queue<int,vector<int> ,greater<int> > q;
stack<int> s;
map<int,int>mp ;
signed main(){
int op;
while(cin>>op){
if(op==0){
int x; cin>>x; s.push(x); mp[x]++; q.push(x);
}
else if(op==1){
int t = s.top() ; s.pop();
mp[t] --;
}
else{
while(q.size()){
int t =q.top() ;
if(mp[t]) { cout<<t<<endl ; break ;} else q.pop() ;
}
}
}
}