Cod sursa(job #161446)
Utilizator | Pal George Catalin georgepal | Data | 18 martie 2008 09:16:30 |
---|---|---|---|
Problema | Range minimum query | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.47 kb |
#include<stdio.h>
long minim(long v[],long x,long y)
{
long min=60000;
for(long i=x;i<=y;i++)
if(v[i]<min) min=v[i];
return min;
}
int main()
{
FILE*f,*g;
f=fopen("rmq.in","r");
g=fopen("rmq.out","w");
long n,m,x,y,v[40000];
fscanf(f,"&ld %ld",&n,&m);
for(long i=1;i<=n;i++)
fscanf(f,"%ld",&v[i]);
for(i=1;i<=m;i++)
{
fscanf(f,"%ld %ld",&x,&y);
long k;
k=minim(v,x,y);
fprintf(g,"%ld\n",k);
}
fcloseall();
return 0;
}