• + 1 comment
    • C++ simple vector solution

    vector> v;

    int q;      
    cin >> q;
    for (int i = 0; i < q; i++){
        int t;
        cin >> t;
        if (t == 2 || t == 3) v.push_back({t, 0});
        else {
            int x; cin >> x;
            v.push_back({t, x});
        }
    }
    vector<int> r;
    for (int i = 0; i < v.size(); i++){
        if (v[i].first == 1)
            r.push_back(v[i].second);
        else if (v[i].first == 2)
            r.erase(r.begin());
        else if (v[i].first == 3){
            auto it = r.begin();
            cout << *it << endl; 
        }
    
    return 0;