#include <bits/stdc++.h>
using namespace std;
int n,q;
int a[200001];
int p[1001][1001];
void read()
{
cin>>n>>q;
for(int i=1;i<=n;i++)
cin>>p[0][i];
}
void prec()
{
for(int i=1;i<=n;i++)
{
int j=1;
int i1=1,i2=n/2+1;
while(i1<=n/2||i2<=n)
{
if(i1>n/2)p[i][j++]=p[i-1][i2++];
else if(i2>n)p[i][j++]=p[i-1][i1++];
else if(p[i-1][i1]<p[i-1][i2])p[i][j++]=p[i-1][i1++];
else p[i][j++]=p[i-1][i2++];
}
}
/*for(int i=1;i<=n;i++)
cout<<p[n][i]<<" ";
cout<<endl;*/
}
void solve()
{
for(int i=1;i<=q;i++)
{
int t,id;
cin>>t>>id;
cout<<p[min(n,t)][id]<<endl;
}
}
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
read();
prec();
solve();
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... |