rt 今天默写st表的时候本地样例过了 但是过评测的时候最后两点t 求助各位dalao帮助
#include <bits/stdc++.h>
using namespace std;
int a[2000010][25] = {0};
int n , m ;
inline int read(){
int x = 0 ; int f = 1 ; char c = getchar() ;
while(c < '0' || c > '9') {if(c == '-') f = -1 ; c = getchar() ;}
while(c >= '0' && c <= '9') {x = x * 10 + c - 48 ; c = getchar() ;}
return x * f ;
}
void pre(){
for(register int i = 1 ; i <= n ; i++)
a[i][0] = read() ;
}
void st(){
for(register int j = 1 ; (1 << j) <= n ; j++)
for(register int i = 1 ; i + (1 << j) - 1 <= n ; i++)
a[i][j] = max(a[i][j - 1] , a[i + (1 << (j - 1))][j - 1]) ;
}
inline int rmq(int l , int r){
int k = log2(r - l + 1) ;
return max(a[l][k] , a[r - (1 << k) + 1][k]) ;
}
int main(){
n = read() , m = read() ;
pre() ;
st() ;
while(m--){
int l , r ;
l =read() , r = read();
cout<<rmq(l , r)<<endl;
}
return 0 ;
}