#pragma GCC optimize("O3") #include using namespace std; #define rep(i, a, n) for (int i = a; i < (int)(n); i++) using ll = long long; int main() { int q; cin >> q; deque> mq; int idx = 0; while (q--) { int t; cin >> t; if (t == 1) { idx++; int x; cin >> x; while (!mq.empty() && mq.back().first <= x) { mq.pop_back(); } mq.push_back({x, idx}); } else { int x; cin >> x; int left = idx - x; while (!mq.empty() && mq.front().second < left) { mq.pop_front(); } cout << mq.front().first << endl; } } }