Cod sursa(job #1189487)

Utilizator gerd13David Gergely gerd13 Data 22 mai 2014 22:55:25
Problema Range minimum query Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 1.04 kb
///Template by Gergely David

#include <fstream>
//#include <iostream>
#include <cmath>
#include <algorithm>
#include <vector>
#include <deque>
#include <queue>
#include <map>
#include <set>
#include <string>
#include <cstring>
#include <cstdio>
#include <cstdlib>
#include <climits>


#define MIN (a, b) (((a)<(b))?(a):(b))
#define MAX (a, b) (((a)>(b))?(a):(b))


using namespace std ;

const int NMAX = 1000005 ;
const int INF = 0x3f3f3f3f ;

//typedef long long Huge[1000] ;

vector <int> V ;
queue < pair <int, int> > Q ;

ifstream cin("rmq.in") ;
ofstream cout("rmq.out");

int N, M, A[NMAX] ;

int main()
{
    cin >> N >> M ;

    for(int i = 0 ; i < N ; ++ i)
        cin >> A[i] ;

    for(int i = 0 ; i < M ; ++ i)
    {
        int X, Y ;
        int MINA = INF ;
        cin >> X >> Y ;
        for(int k = X - 1 ; k <= Y - 1 ; ++ k)
            if(A[k] < MINA)
                MINA = A[k] ;

        cout << MINA << '\n' ;
         }

         cin.close() ;
    cout.close() ;
    return  0 ;
}