Cod sursa(job #825079)

Utilizator mirceadinoMircea Popoveniuc mirceadino Data 27 noiembrie 2012 13:58:09
Problema Range minimum query Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include<cstdio>
int M[10010][10010],n,m,x,y,i,j;
int main()
{
    freopen("rmq.in","r",stdin);
    freopen("rmq.out","w",stdout);
    scanf("%d%d",&n,&m);
    for(i=1;i<=n;i++)
    {
        scanf("%d",&x);
        for(j=1;j<=i;j++)
        {
            if(M[j][i-1]==0) M[j][i]=x;
            else M[j][i]=M[j][i-1]<x?M[j][i-1]:x;
        }
    }
    for(i=1;i<=m;i++)
    {
        scanf("%d %d",&x,&y);
        printf("%d\n",M[x][y]);
    }
    return 0;
}