WA+TLE求调
查看原帖
WA+TLE求调
638718
xueruo楼主2023/1/9 20:16

RT

#include <iostream>
#include <cstdio>
#include <cmath>
#define int unsigned long long
using namespace std;
const int N=1e5+10;
int st[N][25],a[N],n,m;
void ST() {
	for(int i = 1; i<=n; i++)st[0][i] = a[i];
	int p = log(n)/log(2);
	for(int k = 1; k<=p; k++) {
		for(int i = 1; i<=n-(1<<k)+1; i++) {
			st[k][i] = max(st[k-1][i],st[k-1][i+(1<<(k-1))]);
		}
	}
}
int query(int l,int r) {
	int p = log(r-l+1)/log(2);
	return max(st[p][l],st[p][r-(1<<p)+1]);
}
signed main() {
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	ST();
	while(m--){
		int l,r;
		cin>>l>>r;
		cout<<query(l,r)<<"\n";
	}
	return 0;
}
2023/1/9 20:16
加载中...