Pagini recente » Cod sursa (job #878963) | Cod sursa (job #76514) | Cod sursa (job #996246) | Cod sursa (job #287312) | Cod sursa (job #2628730)
#include <bits/stdc++.h>
using namespace std;
#define NMAX 100005
int n, m, st, dr;
struct e{
int val, pos;
} v[NMAX];
bool cmp(e a, e b) {
if(a.val == b.val) {
return a.pos < b.pos;
}
return a.val < b.val;
}
void solve() {
int p = 1;
while(v[p].pos < st || v[p].pos > dr) {
++p;
}
printf("%d\n", v[p].val);
}
void read() {
scanf("%d%d", &n, &m);
for(int i = 1; i <= n; i++) {
scanf("%d", &v[i].val);
v[i].pos = i;
}
sort(v + 1, v + 1 + n, cmp);
for(int i = 1; i <= m; i++) {
scanf("%d%d", &st, &dr);
solve();
}
}
int main() {
freopen("rmq.in", "r", stdin);
freopen("rmq.out", "w", stdout);
read();
return 0;
}