ST表

复制代码
int f[maxn][22];
int n,m;
void ST_prework(){
    for(int i=1;i<=n;i++) cin>>f[i][0];
    int t=log2(n)+1;
    for(int j=1;j<t;j++){
        for(int i=1;i<=n-(1<<j)+1;i++){
            f[i][j]=min(f[i][j-1],f[i+(1<<(j-1))][j-1]);
        }
    }
}
int ST_query(int l,int r){
    int k=log2(r-l+1);
    return min(f[l][k],f[r-(1<<k)+1][k]);
}
复制代码

 

posted @   摸鱼选手LLF  阅读(15)  评论(0编辑  收藏  举报
编辑推荐:
· 35岁程序员的中年求职记:四次碰壁后的深度反思
· 继承的思维:从思维模式到架构设计的深度解析
· 如何在 .NET 中 使用 ANTLR4
· 后端思维之高并发处理方案
· 理解Rust引用及其生命周期标识(下)
阅读排行:
· 35岁程序员的中年求职记:四次碰壁后的深度反思
· 当职场成战场:降职、阴谋与一场硬碰硬的抗争
· ShadowSql之.net sql拼写神器
· Excel百万数据如何快速导入?
· 无需WebView,Vue也能开发跨平台桌面应用
点击右上角即可分享
微信分享提示