Pagini recente » Cod sursa (job #3170758) | Cod sursa (job #3297394)
#include <stdio.h>
#include <set>
#include <vector>
int main() {
FILE *fin = fopen( "heapuri.in", "r" );
FILE *fout = fopen( "heapuri.out", "w" );
std::multiset<int> mata;
std::vector<int> tactu;
int q;
fscanf( fin, "%d", &q );
for( int i = 0; i < q; i++ ){
int task;
fscanf( fin, "%d", &task );
if( task == 1 ){
int x;
fscanf( fin, "%d", &x );
mata.insert( x );
tactu.push_back( x );
}else if( task == 2 ){
int x;
fscanf( fin, "%d", &x );
mata.erase( mata.find( tactu[x - 1] ) );
}else{
fprintf( fout, "%d\n", *mata.begin() );
}
}
fclose( fin );
fclose( fout );
return 0;
}