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

HDOJ 1698 Just A Hook 線段樹

Problem Description
In the game of DotA, Pudge’s meat hook is actually the most horrible thing for most of the heroes. The hook is made up of several consecutive metallic sticks which are of the same length.



Now Pudge wants to do some operations on the hook.

Let us number the consecutive metallic sticks of the hook from 1 to N. For each operation, Pudge can change the consecutive metallic sticks, numbered from X to Y, into cupreous sticks, silver sticks or golden sticks.
The total value of the hook is calculated as the sum of values of N metallic sticks. More precisely, the value for each kind of stick is calculated as follows:

For each cupreous stick, the value is 1.
For each silver stick, the value is 2.
For each golden stick, the value is 3.

Pudge wants to know the total value of the hook after performing the operations.
You may consider the original hook is made up of cupreous sticks.
 

Input
The input consists of several test cases. The first line of the input is the number of the cases. There are no more than 10 cases.
For each case, the first line contains an integer N, 1<=N<=100,000, which is the number of the sticks of Pudge’s meat hook and the second line contains an integer Q, 0<=Q<=100,000, which is the number of the operations.
Next Q lines, each line contains three integers X, Y, 1<=X<=Y<=N, Z, 1<=Z<=3, which defines an operation: change the sticks numbered from X to Y into the metal kind Z, where Z=1 represents the cupreous kind, Z=2 represents the silver kind and Z=3 represents the golden kind.
 

Output
For each case, print a number in a line representing the total value of the hook after the operations. Use the format in the example.
 

Sample Input
1
10
2
1 5 2
5 9 3
 

Sample Output
Case 1: The total value of the hook is 24.
 

Source

#include <iostream>
using namespace std;

const int MAXN = 100001;
struct segment{
    
int left,right,color;
    
bool cover;
}
tree[MAXN*3];

void create(int l,int r,int step){
    tree[step].left
=l,tree[step].right=r;
    tree[step].color
=tree[step].cover=1;
    
if(l==r) return ;
    
int mid=(l+r)>>1;
    create(l,mid,
2*step);
    create(mid
+1,r,2*step+1);
}

void update(int l,int r,int c,int step){
    
if(l==tree[step].left&&r==tree[step].right){
        tree[step].color
=c;
        tree[step].cover
=1;
        
return;
    }

    
if(tree[step].cover){
        tree[step].cover
=0;
        tree[
2*step].cover=tree[2*step+1].cover=1;
        tree[
2*step].color=tree[2*step+1].color=tree[step].color;
    }

    
if(r<=tree[2*step].right)
        update(l,r,c,
2*step);
    
else if(l>=tree[2*step+1].left)
        update(l,r,c,
2*step+1);
    
else{
        update(l,tree[
2*step].right,c,2*step);
        update(tree[
2*step+1].left,r,c,2*step+1);
    }

}

int query(int step){
    
if(tree[step].cover) 
        
return tree[step].color*(tree[step].right-tree[step].left+1);
    
else 
        
return query(2*step)+query(2*step+1);
}

int main(){
    
int i,t,n,q,l,r,c;
    scanf(
"%d",&t);
    
for(i=1;i<=t;i++){
        scanf(
"%d %d",&n,&q);
        create(
1,n,1);
        
while(q--){
            scanf(
"%d %d %d",&l,&r,&c);
            update(l,r,c,
1);
        }

        printf(
"Case %d: The total value of the hook is %d.\n",i,query(1));
    }

    
return 0;
}

posted on 2009-05-12 16:32 極限定律 閱讀(521) 評論(1)  編輯 收藏 引用 所屬分類: ACM/ICPC

評論

# re: HDOJ 1698 Just A Hook 線段樹 2009-08-13 21:02 zeus

good 剛剛做了也是1y
呵呵你寫什么都很詳細啊 學習了  回復  更多評論   

<2009年5月>
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456

導航

統計

常用鏈接

留言簿(10)

隨筆分類

隨筆檔案

友情鏈接

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲女同同性videoxma| 久久久久五月天| 欧美久久精品午夜青青大伊人| 午夜一区不卡| 亚洲视频一区二区在线观看| 亚洲一区二区精品| 美女精品网站| 亚洲卡通欧美制服中文| 亚洲精品综合精品自拍| 你懂的亚洲视频| 亚洲毛片一区二区| 亚洲婷婷综合色高清在线| 欧美中文在线字幕| 亚洲第一精品久久忘忧草社区| 国产农村妇女精品一区二区| 亚洲夫妻自拍| 亚洲欧美国产三级| 国产欧美日韩亚洲| 蜜臀av国产精品久久久久| 国产精品久久久久久久app| 亚洲欧洲另类国产综合| 久久久国产精彩视频美女艺术照福利| 欧美www视频在线观看| 亚洲成人在线视频网站| 欧美一区二区三区视频在线观看| 免费在线观看精品| 亚洲精品免费一二三区| 久久av一区二区三区| 亚洲第一精品夜夜躁人人爽| 亚洲人成亚洲人成在线观看| 欧美一区二区三区精品电影| 欧美成人激情在线| 一区二区三区欧美在线观看| 国产一区二区三区奇米久涩| 久久久久国产精品厨房| 欧美69视频| 亚洲在线免费| 国产精品久线观看视频| 日韩视频在线观看免费| 狂野欧美一区| 亚洲性感激情| 亚洲二区在线观看| 欧美电影专区| 亚洲资源在线观看| 亚洲一区二区免费视频| 影音先锋亚洲精品| 欧美日韩免费在线观看| 久久综合狠狠综合久久激情| 999亚洲国产精| 亚洲男人天堂2024| 亚洲精品一区二区网址| 国产一区 二区 三区一级| 欧美日韩国产综合一区二区| 久久成人一区二区| 久久久久久一区二区| 亚洲欧美日韩综合| 亚洲激情电影在线| 尤物九九久久国产精品的特点| 国产毛片久久| 国产精品久久久久久福利一牛影视| 欧美日本久久| 久久综合激情| 亚洲午夜精品久久| 亚洲美女视频在线观看| 欧美国产第一页| 另类亚洲自拍| 久久久亚洲精品一区二区三区| 欧美亚洲网站| 黄色精品免费| 亚洲高清视频在线观看| 欧美激情网友自拍| 国产亚洲欧美日韩日本| 国产精品一区二区久久精品| 欧美日韩视频在线第一区| 欧美午夜在线| 欧美视频精品一区| 久久精品视频在线看| 久久狠狠亚洲综合| 欧美专区日韩视频| 免费观看成人| 欧美岛国在线观看| 欧美色道久久88综合亚洲精品| 欧美成年网站| 欧美国产第二页| 欧美无砖砖区免费| 国产精品分类| 国内精品久久久久久久97牛牛| 国产区精品在线观看| 亚洲黄色片网站| 日韩午夜在线播放| 亚洲午夜免费视频| 久久女同互慰一区二区三区| 久久永久免费| 欧美日韩国产va另类| 欧美日韩国产小视频在线观看| 欧美国产欧美亚洲国产日韩mv天天看完整 | 午夜精品在线观看| 99re成人精品视频| 免费日韩av片| 亚洲女人天堂av| 久久露脸国产精品| 国产精品成人久久久久| 国产亚洲高清视频| 欧美另类一区二区三区| 欧美色欧美亚洲另类七区| 国产精品影视天天线| 亚洲人成网站999久久久综合| 一区二区三区日韩| 免费久久99精品国产自| 99视频精品在线| 欧美一区二区高清| 欧美日本国产精品| 国产目拍亚洲精品99久久精品| 亚洲欧洲综合| 国产一区二区黄| 久久久人人人| 国产精品视频一二| 亚洲国产精品成人精品| 日韩午夜在线视频| 欧美激情2020午夜免费观看| 亚洲精品乱码久久久久久蜜桃91 | 亚洲欧洲在线观看| 亚洲自拍偷拍福利| 欧美日韩高清免费| 国产一区二区三区奇米久涩| 亚洲图片欧洲图片av| 欧美阿v一级看视频| 久久在线免费视频| 午夜国产精品影院在线观看| 久久人人爽人人爽| 国产主播精品| 亚洲中字黄色| 亚洲人成人一区二区三区| 久久久久久久久久久久久女国产乱 | 亚洲午夜激情在线| 欧美色一级片| 亚洲精品美女久久久久| 最新亚洲视频| 欧美精品色网| 亚洲国产视频直播| 亚洲精品欧美| 久久女同互慰一区二区三区| 亚洲高清视频中文字幕| 欧美成人免费全部| 久久精品成人一区二区三区| 亚洲黄页一区| 亚洲国产va精品久久久不卡综合| 免费久久99精品国产自| 亚洲电影下载| 欧美一区二区免费视频| 正在播放欧美视频| 欧美日韩一区免费| 亚洲影视在线播放| 亚洲欧美一区二区三区极速播放| 欧美视频不卡| 性欧美大战久久久久久久免费观看| 蜜桃av一区二区| 亚洲一区在线观看免费观看电影高清| 欧美日韩一区二区三区四区在线观看 | 亚洲一区二区在| 一本色道久久99精品综合 | 国语自产精品视频在线看| 男女精品网站| 国产乱码精品| 欧美一区二区三区免费视| 亚洲福利一区| 国产精品久久久久久久久久直播| 在线视频你懂得一区| 亚洲欧美日韩国产综合精品二区| 国产精品网站在线观看| 久久亚洲精品视频| 欧美大片免费| 99视频超级精品| 久久av一区二区三区| 亚洲国产午夜| 香港成人在线视频| 亚洲国产小视频| 欧美在线免费| 亚洲伦理中文字幕| 亚洲精品女人| 欧美性猛交99久久久久99按摩 | 亚洲一区精品在线| 亚洲欧美怡红院| 日韩视频在线免费观看| 午夜精品免费在线| 国产精品久久久久天堂| 亚洲福利专区| 国产精品成人免费视频| 亚洲国产精品专区久久| 国产精品久久波多野结衣| 亚洲第一区中文99精品| 国产精品日韩在线观看| 欧美激情乱人伦| 国产精品美女午夜av| 免费欧美电影| 老色批av在线精品| 一本色道久久综合精品竹菊 | 狠狠狠色丁香婷婷综合久久五月 | 在线精品观看| 中文精品在线|