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;
#define sz(x) int(x.size())
#define all(x) begin(x),end(x)
#define forsn(i,s,n) for(int i=int(s);i<int(n);i++)
#define forn(i,n) for(int i=0;i<int(n);i++)
#define dforsn(i,s,n) for(int i=int(n)-1;i>=int(s);i--)
#define dforn(i,n) for(int i=int(n)-1;i>=0;i--)
#define dbg(x) cerr<<#x<<": "<<x<<endl
#define pb push_back
typedef vector<int> vi;
int main(){
ios::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
int n,q;
cin>>n>>q;
vector<vi> p(1,vi(n));
forn(i,n) cin>>p[0][i];
while(true){
int i=0,j=n/2;
vi v(n);
forn(k,n){
if(i<n/2&&(j>=n||p.back()[i]<p.back()[j])) v[k]=p.back()[i++];
else v[k]=p.back()[j++];
}
if(v==p.back()) break;
p.pb(v);
}
while(q--){
int t,i;
cin>>t>>i;
--i,t=min(t,sz(p)-1);
cout<<p[t][i]<<'\n';
}
return 0;
}
# | 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... |