Pagini recente » Cod sursa (job #2770771) | Cod sursa (job #2451074) | Cod sursa (job #1352807) | Cod sursa (job #3214174) | Cod sursa (job #3228306)
#include <fstream>
#include <set>
using namespace std;
ifstream cin("mergeheap.in");
ofstream cout("mergeheap.out");
multiset<int>m[101];
signed main()
{
int n , q , op , a , b; cin >> n >> q;
for(int i = 1 ; i <= q ; ++i)
{
cin >> op;
if(op == 1)
{
cin >> a >> b;
m[a].insert(b);
}
if(op == 2)
{
cin >> a;
auto rit = m[a].rbegin();
cout << *rit << '\n';
m[a].erase(m[a].find(*rit));
}
if(op == 3)
{
cin >> a >> b;
if(m[a].size() < m[b].size()) swap(m[a],m[b]);
for(auto it : m[b]) m[a].insert(it);
m[b].clear();
}
}
return 0;
}