青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

獨立博客: 哲學與程序

哲學與程序

ZOJ@3453

ZOJ@3453 題目連接
題意:有N個敵人,排成一排編號為1~n;對于敵人i有一個初始value[i];對于敵人i,其朋友范圍區間[Li,Ri],i可能在[Li,Ri]區間內。你每次從右邊發射子彈,第i顆子彈值為Ki,打中第一個value值大于或等于Ki的敵人,該敵人value值變為1,其朋友范圍內的敵人value值均增加1;但是,如果沒有敵人的value值大于或者等于Ki,則所有敵人value值增加1。求最后敵人中最高的value值。
解法:線段樹,每個節點設置一個max、add元素,max表示該區間上的最大值,add表示該區間增加的值;實現(1)區間段元素+1操作,即對應的區間add+1;(2)對于對某個value值置1,即可將max=-覆蓋該點的所有區間add累加值+1;(3)查找大于或等于K的最右元素。
// 2385696      2011-01-14 20:30:00        Accepted      3453      C++      430      6040      redsea
#include<stdio.h>
#include
<string.h>
#include
<algorithm>
using namespace std;
const int maxn = 100005;
int fr[maxn], fl[maxn], value[maxn];
struct node{
    
int cr,cl;
    
int r,l;
    
int max, add;
}st[maxn
*2];
int len;
int build(int l,int r, int root)
{
    
if(l==r){
        st[root].cr 
= st[root].cl = -1;
        st[root].r 
= r;
        st[root].l 
= l;
        st[root].max 
= value[l];
        st[root].add 
= 0;
        
return value[l];
    }
else{
        
int mid = (l+r)/2;
        st[root].r 
= r;
        st[root].l 
= l;
        len
++;
        
int ll = len;
        st[root].cl 
= ll;
        
int m1 = build(l,mid, ll);
        len
++;
        
int rr = len;
        st[root].cr 
= rr;
        
int m2 = build(mid+1,r,rr);
        st[root].add 
= 0;
        st[root].max 
= (m1<m2?m2:m1);
        
return st[root].max;
    }
}
int add(int l, int r, int root)
{
    
if(root < 0)return -1000000000;
    
else if(st[root].l > r || st[root].r < l){
        
return -1000000000;
    }
    
else if(l <= st[root].l && r >= st[root].r){
        st[root].add
++;
        st[root].max
++;
        
return st[root].max;
    }
else{
        
int m1 = add(l,r,st[root].cl);
        
int m2 = add(l,r,st[root].cr);
        
if(m1<m2)m1=m2;
        
if(st[root].max < m1+st[root].add)st[root].max = m1+st[root].add;
        
return st[root].max;
    }
}
int findMax(int x, int root, int a)
{
    
if(st[root].r == st[root].l)
        
return st[root].l;
    
else{
        
int l = st[root].cl;
        
int r = st[root].cr;
        
if(st[r].max + a+st[root].add >= x)
            
return findMax(x,r,a+st[root].add);
        
else
            
return findMax(x,l,a+st[root].add);
    }
}

int setToOne(int w, int root, int a)
{
    
if(st[root].l == st[root].r)
    {
        st[root].add 
= 0;
        st[root].max 
= -+ 1;
        
return st[root].max;
    }
else{
        
int l = st[root].cl;
        
int r = st[root].cr;
        
if(st[l].l <= w && st[l].r >= w){
            
int m1 =setToOne(w,l,a+st[root].add);
            
int m2 =st[r].max;
            st[root].max 
= (m1<m2?m2:m1)+st[root].add;
            
return st[root].max;
        }
else{
            
int m1 = setToOne(w,r,a+st[root].add);
            
int m2 = st[l].max;
            st[root].max 
= (m1<m2?m2:m1)+st[root].add;
            
return st[root].max;
        }
    }
}
int main()
{
    
int n, m, x;
    
while(scanf("%d",&n)!=EOF)
    {
        
for(int i = 1; i <= n; i++){
            scanf(
"%d%d%d",value+i,fl+i,fr+i);
        }
        len 
= 0;
        build(
1,n,0);
        scanf(
"%d",&m);
        
while(m--)
        {
            scanf(
"%d",&x);
            
if(st[0].max < x){
                add(
1,n,0);
            }
            
else{
                
int index = findMax(x,0,0);
                setToOne(index,
0,0);
                add(fl[index],fr[index],
0);
            }
        }
        printf(
"%d\n",st[0].max);
    }
    
return 0;
}


posted on 2011-01-15 12:34 哲學與程序 閱讀(189) 評論(0)  編輯 收藏 引用 所屬分類: Algorithm

導航

公告

歡迎訪問 http://zhexue.sinaapp.com

常用鏈接

隨筆分類(37)

隨筆檔案(41)

Algorithm

最新隨筆

搜索

最新評論

獨立博客: 哲學與程序
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久久青草青青国产亚洲免观| 久久成人免费日本黄色| 欧美成人精品一区| 美玉足脚交一区二区三区图片| 在线精品观看| 亚洲激情综合| 欧美麻豆久久久久久中文| 一区二区日韩免费看| 一本色道久久综合亚洲精品婷婷 | 国产欧美精品一区二区色综合| 中文一区字幕| 亚洲欧美日韩国产一区| 国产一区久久| 亚洲高清不卡av| 欧美性久久久| 久久综合999| 欧美日韩高清在线一区| 亚洲欧美综合另类中字| 久久精品免费电影| 日韩午夜在线视频| 午夜综合激情| 亚洲精品日日夜夜| 亚洲永久字幕| 亚洲丰满在线| 亚洲欧美日韩一区二区三区在线观看 | 亚洲第一福利视频| 国产精品久久久久久av福利软件| 久久激情视频免费观看| 欧美国产日韩xxxxx| 欧美有码在线视频| 欧美极品在线视频| 久久免费视频网站| 欧美日韩福利| 欧美jizzhd精品欧美巨大免费| 欧美午夜视频在线观看| 欧美va亚洲va香蕉在线| 国产精品一级久久久| 欧美大片在线看| 国产日韩久久| 在线亚洲伦理| 亚洲免费高清视频| 久久久久久久尹人综合网亚洲| 亚洲午夜久久久久久久久电影网| 久久亚洲免费| 久久av一区二区三区漫画| 欧美高清成人| 欧美国产日韩一二三区| 国产日韩欧美亚洲| 亚洲天堂第二页| 亚洲视频1区2区| 欧美理论在线| 亚洲电影免费在线观看| 激情一区二区三区| 欧美一级电影久久| 欧美一区三区三区高中清蜜桃 | 校园春色综合网| 亚洲一区观看| 欧美三级免费| 亚洲毛片播放| 亚洲精品乱码久久久久久蜜桃麻豆| 欧美专区在线观看| 久久久亚洲一区| 韩国一区二区三区美女美女秀| 亚洲男人天堂2024| 亚洲欧美在线另类| 国产乱码精品| 香蕉亚洲视频| 久久视频国产精品免费视频在线| 国产精品久久一区二区三区| 99视频一区二区| 这里只有精品视频在线| 欧美日本不卡| 一区二区三区日韩精品| 亚洲欧美不卡| 国产精品素人视频| 欧美一区二区视频在线| 久久久久久综合网天天| 国产在线视频不卡二| 欧美中文在线视频| 欧美xart系列高清| 一本到高清视频免费精品| 欧美日韩三级| 亚洲综合另类| 久久久精品国产一区二区三区| 国内外成人免费激情在线视频| 久久久青草婷婷精品综合日韩| 美女主播视频一区| 日韩一区二区免费高清| 国产精品多人| 久久久99精品免费观看不卡| 欧美激情1区| 亚洲影院高清在线| 国产综合色在线| 欧美成人精品| 亚洲一区二区三区四区五区午夜 | 欧美国产日韩a欧美在线观看| 亚洲激情亚洲| 国产精品实拍| 欧美成人蜜桃| 亚洲免费中文字幕| 亚洲黄一区二区三区| 欧美亚洲一区在线| 亚洲欧洲一区二区三区久久| 国产精品久久久久久亚洲毛片| 久久精品中文| 亚洲一级黄色av| 亚洲东热激情| 久久久久国产精品www| 亚洲美女91| 精品动漫3d一区二区三区免费 | 欧美亚洲一区三区| 亚洲精品久久久久久久久久久久久| 欧美影片第一页| 99热这里只有精品8| 精品福利电影| 国产丝袜美腿一区二区三区| 免费观看国产成人| 亚久久调教视频| 亚洲人成在线免费观看| 欧美一区二区视频在线观看| 1024成人| 狠狠入ady亚洲精品| 欧美精品日韩一区| 久久成人人人人精品欧| 99国内精品久久| 久久精品91| 亚洲欧美日韩精品久久亚洲区 | 欧美亚州在线观看| 开元免费观看欧美电视剧网站| 一本色道久久| 亚洲福利专区| 欧美国产欧美综合| 久久精品一二三区| 一区二区国产日产| 亚洲国产成人高清精品| 欧美日韩国产免费观看| 久久婷婷av| 欧美一区二区三区在线看| 亚洲免费电影在线| 欧美护士18xxxxhd| 久久精品久久99精品久久| 欧美亚洲在线| 亚洲欧美国内爽妇网| 99国产精品国产精品毛片| 亚洲大胆人体视频| 亚洲韩国日本中文字幕| 国产视频一区二区在线观看| 欧美日本一区| 欧美精品色网| 欧美激情亚洲综合一区| 欧美啪啪成人vr| 免费观看日韩av| 欧美91精品| 蜜桃伊人久久| 欧美在线观看你懂的| 久久野战av| 美女久久网站| 蜜桃av一区二区三区| 久久亚洲精品视频| 欧美激情视频在线播放| 欧美顶级少妇做爰| 欧美成人小视频| 欧美二区在线看| 欧美一区二区黄| 久久夜色精品一区| 久久理论片午夜琪琪电影网| 久久精品亚洲精品| 久久欧美肥婆一二区| 欧美理论片在线观看| 欧美日一区二区在线观看 | 午夜精品在线| 久久久久国色av免费看影院| 日韩一区二区免费看| 亚洲专区免费| 久久国产精品电影| 免费成人在线观看视频| 欧美国产免费| 国产无遮挡一区二区三区毛片日本| 国产一区二区毛片| 黄色一区二区三区| 99国产一区| 久久久九九九九| 欧美激情在线狂野欧美精品| 欧美韩国在线| 亚洲图片欧美午夜| 亚洲欧美影音先锋| 久久影院午夜论| 欧美福利视频在线观看| 国产精品久久二区二区| 亚洲高清免费| 亚洲在线日韩| 久久综合一区二区| 99re热精品| 久久免费99精品久久久久久| 欧美成人精品h版在线观看| 欧美日韩综合网| 一区二区三区自拍| 欧美一区二区视频观看视频| 美女久久一区| 一区二区三区色|