首页 > 编程语言 > 详细

C++模板:ST算法

时间:2014-03-03 15:49:23      阅读:456      评论:0      收藏:0      [点我收藏+]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
//初始化
void init_rmq(int n){ 
    for(int i=0;i<n;i++)d[i][0]=a[i]; 
    for(int j=1;(1<<j)<=n;j++){ 
        for(int i=0;i+(1<<j)-1<n;i++) 
        d[i][j]=max(d[i][j-1],d[i+(1<<(j-1))][j-1]); 
    
}  
//查询
int query_rmq(int L,int R){ 
    int k=0; 
    while(1<<(k+1)<=R-L+1)k++; 
    return max(d[L][k],d[R-(1<<k)+1][k]); 

C++模板:ST算法,布布扣,bubuko.com

C++模板:ST算法

原文:http://www.cnblogs.com/forever97/p/3576948.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!