#include #include//min,max #include//log using namespace std; const int maxn=50010; int h[maxn]; int Fmax[maxn][20];//F(i,j)表示区间[i,i+2^j-1]的最值,区间长度为2^j int Fmin[maxn][20]; int N,Q; void ST_create() { for(int i=1;i<=N;i++)//初始化 Fmax[i][0]=Fmin[i][0]=h[i]; int k=log2(N);//log(N)/log(2.0); for(int j=1;j<=k;j++) for(int i=1;i<=N-(1<