//
// main.cpp
// Chapter 1
//
// Created by chengzhi lin on 2018/3/6.
// Copyright © 2018年 lczazu. All rights reserved.
//
#include <string>
#include <stack>
#include <iostream>
#include <vector>
#include <map>
#include <cstring>
#define MAXN 100005
using namespace std;
int A[ MAXN ]; //数组
int n; //数组size
void RMQ_init( )
{
for( int i = 0; i < n; ++i )
{
d[ i ][ 0 ] = A[ i ];
}
for( int j = 1; ( 1 << j ) <= n; ++j )
{
for( int i = 0; i + ( 1 << j ) - 1 < n; ++i )
{
d[ i ][ j ] = max( d[ i ][ j - 1 ], d[ i + ( 1 << ( j - 1 ) ) ][ j - 1 ] );
}
}
}
int RMQ( int L, int R )
{
int k = 0;
while( ( 1 << ( k + 1 ) ) <= ( R - L +1 ) )
{
++k;
}
return max( d[ L ][ k ], d[ R - ( 1 << k ) + 1 ][ k ] );
}
int main(int argc, const char * argv[]) {
return 0;
}