This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
int n, q;
vector<int> f(vector<int>& v) {
vector<int> a;
int i = 0, j = n / 2;
while (i < n / 2 && j < n) {
if (v[i] < v[j]) a.push_back(v[i++]);
else a.push_back(v[j++]);
}
while (i < n / 2) a.push_back(v[i++]);
while (j < n) a.push_back(v[j++]);
return a;
}
signed main() {
cin >> n >> q;
vector<int> v(n);
for (auto& i : v) cin >> i;
vector<vector<int>> ans(n + 1);
ans[0] = v;
for (int i = 1; i <= n; ++i) ans[i] = f(ans[i - 1]);
while (q--) {
int t, i;
cin >> t >> i;
t = min(t, n);
cout << ans[t][i - 1] << '\n';
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |