Cod sursa(job #1962688)
Utilizator | Data | 11 aprilie 2017 23:16:08 | |
---|---|---|---|
Problema | Heapuri | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.52 kb |
#include <cstdio>
#include <vector>
#include <set>
using namespace std;
int main()
{
freopen("heapuri.in", "r", stdin);
freopen("heapuri.out", "w", stdout);
int n;
scanf("%d", &n);
set<int> s;
vector<int> numere;
int tmp1, tmp2;
for(int k = 0; k < n; k++)
{
scanf("%d", &tmp1);
if(tmp1 == 1)
{
scanf("%d", &tmp2);
s.insert(tmp2);
numere.push_back(tmp2);
}
else if(tmp1 == 2)
{
scanf("%d", &tmp2);
s.erase(numere[tmp2 - 1]);
}
else
{
printf("%d\n", *s.begin());
}
}
return 0;
}