Pagini recente » Cod sursa (job #1617810) | Cod sursa (job #1110755) | Cod sursa (job #2998896) | Cod sursa (job #1201703) | Cod sursa (job #3276367)
#include <bits/stdc++.h>
using namespace std;
int mabas[100001][20], v[100001], n;
void precalc()
{
for (int i = 0; i < n; i ++)
mabas[i][i] = i;
for (int i = 0; i < n; i ++)
{
for (int j = i + 1; j < n; j ++)
{
if (v[mabas[i][j - 1]] < v[j])
mabas[i][j] = mabas[i][j - 1];
else
mabas[i][j] = j;
}
}
}
int main()
{
ifstream cin("rmq.in");
ofstream cout("rmq.out");
cin >> n;
int m; cin >> m;
for (int i = 0; i < n; i ++)
cin >> v[i];
precalc();
for (int i = 0; i < m; i ++)
{
int a, b; cin >> a >> b;
cout << v[mabas[a - 1][b - 1]] << '\n';
}
return 0;
}