Pagini recente » Cod sursa (job #2134274) | Cod sursa (job #1518392) | Cod sursa (job #2679274) | Istoria paginii runda/5problemepanamaine/clasament | Cod sursa (job #2789150)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("rmq.in");
ofstream fout("rmq.out");
int n, m, rmq[100002][100002], v[100002];
void do_rmq(int n){
for(int i=1; i<=n; i++){
rmq[i][i] = v[i];
for(int j=i+1; j<=n; j++){
if(v[j] < rmq[i][j-1]) rmq[i][j] = v[j];
else rmq[i][j] = rmq[i][j-1];
}
}
}
int main(){
fin >> n >> m ;
for(int i=1; i<=n; i++)
fin >> v[i];
do_rmq(n);
for(int i=1; i<=m; i++){
int a, b;
fin >> a >> b;
fout << rmq[a][b] << '\n';
}
return 0;
}