• <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>
            心如止水
            Je n'ai pas le temps
            posts - 400,comments - 130,trackbacks - 0
            單個更新;維護區間和。
            以下是我的代碼:
            #include<iostream>
            #include
            <string>
            #define maxn 50007
            #define L(x) (x<<1)
            #define R(x) ((x<<1)+1)
            using namespace std;
            const string _1("Add");
            const string _2("Sub");
            const string _3("Query");
            const string end("End");
            struct
            {
                
            long a,b,sum;
            }seg[maxn
            *3];
            long test,n,r[maxn];
            void build(long node,long x,long y)
            {
                
            long mid=(x+y)>>1;
                seg[node].a
            =x;seg[node].b=y;
                
            if(x==y)
                  seg[node].sum
            =r[x];
                
            else if(x<y)
                {
                   build(L(node),x,mid);
                   build(R(node),mid
            +1,y);
                   seg[node].sum
            =seg[L(node)].sum+seg[R(node)].sum;
                }
            }
            void add(long node,long pos,long det)
            {
                
            long a=seg[node].a,b=seg[node].b,mid=(a+b)>>1;
                seg[node].sum
            +=det;
                
            if(a<b)
                {
                   
            if(mid>=pos)
                     add(L(node),pos,det);
                   
            else add(R(node),pos,det);
                }
            }
            void sub(long node,long pos,long det)
            {
                
            long a=seg[node].a,b=seg[node].b,mid=(a+b)>>1;
                seg[node].sum
            -=det;
                
            if(a<b)
                {
                   
            if(mid>=pos)
                     sub(L(node),pos,det);
                   
            else sub(R(node),pos,det);
                }
            }
            long getsum(long node,long x,long y)
            {
                
            long a=seg[node].a,b=seg[node].b,mid=(a+b)>>1,re=0;
                
            if(x<=a&&b<=y)
                  re
            =seg[node].sum;
                
            else
                {
                   
            if(mid>=x)
                     re
            +=getsum(L(node),x,y);
                   
            if(mid+1<=y)
                     re
            +=getsum(R(node),x,y);
                }
                
            return re;
            }
            int main()
            {
                
            long a,b;
                
            string cmd;
                cin
            >>test;
                
            for(long k=1;k<=test;k++)
                {
                   cin
            >>n;
                   
            for(long i=1;i<=n;i++) cin>>r[i];
                   build(
            1,1,n);
                   cout
            <<"Case "<<k<<":"<<endl;
                   
            while(cin>>cmd&&cmd!=end&&cin>>a>>b)
                     
            if(cmd==_1)
                       add(
            1,a,b);
                     
            else if(cmd==_2)
                       sub(
            1,a,b);
                     
            else if(cmd==_3)
                       cout
            <<getsum(1,a,b)<<endl;
                }
            return 0;
            }


            posted on 2010-02-24 10:50 lee1r 閱讀(429) 評論(0)  編輯 收藏 引用 所屬分類: 題目分類:數據結構
            精品精品国产自在久久高清| 欧美日韩成人精品久久久免费看| 久久久久99精品成人片三人毛片 | 久久人人爽人人爽AV片| 久久久久久精品无码人妻| 久久久久久国产精品免费免费| 久久精品欧美日韩精品| 久久99亚洲网美利坚合众国| 亚洲综合精品香蕉久久网| 99久久精品国产一区二区| 亚洲精品无码久久久影院相关影片 | 久久涩综合| 久久996热精品xxxx| 久久www免费人成精品香蕉| 精品国产福利久久久| 久久久久人妻精品一区二区三区 | 国产精品免费久久| 久久久亚洲精品蜜桃臀| 无码8090精品久久一区| 久久久久亚洲AV无码网站| 久久精品成人免费看| 欧美精品福利视频一区二区三区久久久精品 | 国产精品gz久久久| 久久影视综合亚洲| 久久久精品波多野结衣| 99久久国产免费福利| AV色综合久久天堂AV色综合在 | 香蕉久久影院| 久久久久久毛片免费看| 久久精品国产91久久综合麻豆自制| 国产精品亚洲综合久久| 亚洲欧洲中文日韩久久AV乱码| 久久国产精品-久久精品| 国产精品久久久久9999| 色狠狠久久AV五月综合| 欧美噜噜久久久XXX| 久久精品国产99久久无毒不卡| 欧美牲交A欧牲交aⅴ久久 | 久久久精品久久久久特色影视| 一本久久久久久久| 精品久久久久久久中文字幕|