Pagini recente » Cod sursa (job #3212043) | Cod sursa (job #2142795) | Cod sursa (job #2983331) | Cod sursa (job #2927354) | Cod sursa (job #3236205)
#include <fstream>
using namespace std;int n,q,g[18][300007],lg[100007],l,r,p;ifstream i("rmq.in");ofstream o("rmq.out");int main(){i>>n>>q;lg[0]=-1;for(int i=1;i<=n;++i)i>>g[0][i],lg[i]=lg[i/2]+1;for(int j=1;j<=17;++j)for(int i=1;i<=n;++i)g[i][j]=min(g[j-1][i],g[j-1][i+(1<<(j-1))]);while(q--){i>>l>>r;p=lg[r-l+1];o<<min(g[p][l],g[p][r-(1<<p)+1])<<"\n";}return 0;}