P3865

st表。(还是半懂不懂)

#include <bits/stdc++.h>
using  namespace std;
int n,m,x,y,l,a[100010],f[100010][20];
int main(){
	cin>>n>>m; 
	a[1]=0;
	for(int i=2;i<=n;i++)a[i]=a[i>>1]+1;
	for(int i=1;i<=n;i++)cin>>f[i][0];
	for(int j=1;j<=a[n];j++)for(int i=1;i<=n-(1<<j)+1;i++)f[i][j]=max(f[i][j-1],f[i+(1<<(j-1))][j-1]);
	for(int i=1;i<=m;i++){
		cin>>x>>y; 
		l=a[y-x+1];
		cout<<max(f[x][l],f[y-(1<<l)+1][l])<<endl;
	}
}

本来想交了lg再说的,无奈vjudge日爆

posted @   yzc_is_SadBee  阅读(4)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!

阅读目录(Content)

此页目录为空

点击右上角即可分享
微信分享提示