Submission #1213071

#TimeUsernameProblemLanguageResultExecution timeMemory
1213071yanbAbracadabra (CEOI22_abracadabra)C++20
0 / 100
453 ms35528 KiB
#include <bits/stdc++.h>
 
#define int long long
 
using namespace std;

using pii = pair<int, int>;
using t3i = tuple<int, int, int>;

signed main() {
    ios_base::sync_with_stdio(0); cin.tie(0);
    
    int n, q;
    cin >> n >> q;
    n /= 2;
    vector<int> a(2 * n);
    for (int i = 0; i < 2 * n; i++) cin >> a[i];

    vector<vector<pii>> qs(500);
    for (int i = 0; i < q; i++) {
        int t, id;
        cin >> t >> id;
        id--;
        qs[min(t, 499ll)].emplace_back(id, i);
    }

    vector<int> ans(q);
    for (int i = 0; i < 500; i++) {
        for (auto [id, qi] : qs[i]) {
            ans[qi] = a[id];
        }
        //for (int x : a) cout << x << " ";
        //cout << "\n";

        int il = 0, ir = n;
        vector<int> b;
        while (il < n || ir < 2 * n) {
            if (ir == 2 * n || (il < n && a[il] < a[ir])) {
                b.push_back(a[il]);
                il++;
            } else {
                b.push_back(a[ir]);
                ir++;
            }
        }
        a = b;
    }

    for (int x : ans) cout << x << "\n";
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...