Pagini recente » Cod sursa (job #2102739) | Cod sursa (job #1908406) | Cod sursa (job #2927190) | Cod sursa (job #140154) | Cod sursa (job #3248796)
#include <fstream>
using namespace std;
ifstream cin ("rmq.in");
ofstream cout("rmq.out");
int main()
{
int n, q;
cin >> n >> q;
int a[n+3];
int rmq[n+2][n+2];
for(int i=1; i<=n; i++) {
cin >> a[i];
rmq[i][i]=a[i];
}
for(int leng=2; leng<=n; leng++)
{
for(int i=1; i+leng-1<=n; i++)
{
int j=i+leng-1;
rmq[i][j]=min(rmq[i][j-1], a[j]);
}
}
for(int i=1; i<=q; i++)
{
int x, y;
cin >> x >> y;
cout << rmq[x][y] << '\n';
}
return 0;
}