#include using namespace std; #include using namespace __gnu_pbds; template using ordered_set = tree, rb_tree_tag, tree_order_statistics_node_update>; int main() { int q, k; cin >> q >> k; ordered_set> s; int id = 0; while (q--) { int t; cin >> t; if (t == 1) { long long v; cin >> v; s.insert({v, id++}); } else { if ((int)s.size() < k) { cout << -1 << '\n'; } else { auto it = s.find_by_order(k - 1); cout << it->first << '\n'; s.erase(it); } } } }