// 1 x 在set中加x
//2 删除集合中的最小元素
//3 输出集合的最大元素
#include<cstdio>
#include<cstring>
#include<iostream>
#include<set>
using namespace std ;
const int maxn = 1e6+10 ;
multiset<int> ms ;
int main()
{
int n ;
multiset<int>::iterator it ;
while(~scanf("%d" , &n))
{
ms.clear() ;
while(n--)
{
int op , x ;
scanf("%d" , &op) ;
if(op == 1)
{
scanf("%d" , &x) ;
ms.insert(x) ;
}
else if(op == 2)
{
if(!ms.size())continue ;
ms.erase(ms.begin()) ;
}
else
{
if(!ms.size())puts("0") ;
else
{
it = ms.end() ;
it-- ;
printf("%d\n" , *(it)) ;
}
}
}
}
}
版权声明:本文为博主原创文章,未经博主允许不得转载。
hdu5344MZL's simple problem stl set
时间: 2024-10-16 07:47:11