Pagini recente » Monitorul de evaluare | Cod sursa (job #2606278) | Cod sursa (job #947283) | Cod sursa (job #460492) | Cod sursa (job #1739592)
#include <bits/stdc++.h>
using namespace std;
ifstream in ( "heapuri.in" );
ofstream out( "heapuri.out" );
const int DIM = 2e5 + 5;
const int INF = 0x3f3f3f3f;
int Q, X, Y, Z, N;
struct comp {
bool operator()( const int &X, const int &Y ) const {
return X < Y;
}
};
vector <int> V;
multiset <int, comp> mySet;
multiset <int, comp> :: iterator it;
int main( void ) {
in >> Q;
for( int k = 1; k <= Q; k ++ ) {
in >> X;
switch( X ) {
case 1: {
in >> Y; V.push_back( Y );
mySet.insert( Y );
break;
}
case 2: {
in >> Y;
mySet.erase( V[Y - 1] );
break;
}
case 3: {
it = mySet.begin();
out << *it << "\n";
break;
}
}
}
return 0;
}