28分
想问问哪里写的有点问题
#include<bits/stdc++.h>
#define MAX 200001
using namespace std;
int read(){
char ch=getchar();
int x=0,f=1;
while(ch<'0'||ch>'9'){
if(ch=='-')f=-1;
ch=getchar();
}
while(ch>='0'&&ch<='9'){
x=x*10+(ch^48);
ch=getchar();
}
return x*f;
}
priority_queue<int> q;
priority_queue<int,vector<int>,greater<int> > p;
int a[MAX],nowu;
int main(){
int n,m,j=1;m=read(),n=read();
for(int i=1;i<=m;i++)a[i]=read();
for(int i=1;i<=n;i++){
nowu=read();
while(j<=nowu){
q.push(a[j++]);
if(q.size()>i){
p.push(q.top());
q.pop();
}
}
printf("%d\n",q.top());
}
return 0;
}