Cod sursa(job #3236228)

Utilizator LucaMuresanMuresan Luca Valentin LucaMuresan Data 26 iunie 2024 16:55:03
Problema Range minimum query Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.33 kb
#include <fstream>
using namespace std;
ifstream f("rmq.in");
ofstream g("rmq.out");
int a[17][1<<17],n,q,i,j,k,l,r;
main() {
  f>>n>>q;
  for(; i<n; i++)f>>a[0][i];
  while(j++<16){
  for(i=0; i<n; i++)a[j][i]=min(a[j-1][i],a[j-1][i+(1<<j-1)]);
  }
  for(; f>>l>>r; k=__lg(r-l+1),g<<min(a[k][l-1],a[k][r-(1<<k)])<<'\n');
}