TLE in #7,#11,但都TLE的不多(都没有到达即使上限(即500 + 200 = 700ms),我的是#7:599ms,#11:631ms,所以求卡常:
#include <algorithm>
#include <iostream>
#include <vector>
int i = 0,cnt = 1;
std::vector <int> v;
constexpr int maxn = 2e5 + 5;
int get(){return v[i++];}
void add(int x){v.insert(std::upper_bound(v.begin(),v.end(),x),x);}
int main(){
std::ios::sync_with_stdio(0);
std::cin.tie(0),std::cout.tie(0);
int m,n,a[maxn],u[maxn];
std::cin >> m >> n;
for (int i = 1;i <= m;i++) std::cin >> a[i];
for (int i = 1;i <= n;i++) std::cin >> u[i];
for (int i = 1;i <= m;i++){
add(a[i]);
while (u[cnt] == i)
std::cout << get() << '\n',cnt++;
}
return 0;
}