/** [tree] poj 3481 动态添加删除数组元素,查询最大最小值。 STL set 轻松水过。 */ #include <stdio.h> #include <set> #include <algorithm> #include <vector> using namespace std; #define MK make_pair #define Pii pair<int,int> int main() { set< Pii > st; set< Pii >::iterator it; int ask,p,k; while(scanf("%d",&ask) && ask) { if(ask == 1) { scanf("%d%d",&k,&p); st.insert(MK(p,k)); continue; } if(st.empty()) { printf("0\n"); continue; } if(ask == 2) { it = st.end(); --it; } else it = st.begin(); printf("%d\n",(*it).second); st.erase(it); } return 0; } /** [tree] poj 3481 动态添加删除数组元素,查询最大最小值。 STL se