萌新刚学ST表,
查看原帖
萌新刚学ST表,
144164
Jerrylee楼主2020/10/25 12:03
#include<cstdio>
#include<cstring>
#define Max2(a,b) (a>b?a:b)
int x[1000007][25];
int main(){
	int n,m;
	scanf("%d%d",&n,&m);
	for(int i=1;i<=n;i++)
		scanf("%d",&x[0][i]);
	int t=2,tt;
	for(tt=1;t<=n;tt++,t<<=1){
		int h=t/2;
		for(int j=1;j<=n-t+1;j++)
			x[tt][j]=Max2(x[tt-1][j],x[tt-1][j+h]);
	}
	for(int i=1;i<=m;i++){
		int a,b;
		scanf("%d%d",&a,&b);
		int u=b-a+1,k=t,kk=tt;
		for(;k>u;k>>=1,kk--);
		printf("%d\n",Max2(x[kk][a],x[kk][b-k+1]));
	}
	
}

代码

求大佬帮忙找一下错误

帮我的人CSP2020 RP=INF

2020/10/25 12:03
加载中...