• <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 閱讀(437) 評論(0)  編輯 收藏 引用 所屬分類: 題目分類:數據結構
            亚洲午夜无码AV毛片久久| 99久久国产精品免费一区二区| 亚洲综合婷婷久久| 精品久久久久久无码人妻热| 奇米影视7777久久精品人人爽| 色狠狠久久综合网| 麻豆成人久久精品二区三区免费| 91精品国产色综久久| 伊人久久大香线蕉亚洲五月天| 久久香蕉一级毛片| 亚洲国产精品无码成人片久久| 久久精品亚洲乱码伦伦中文| 久久99久久99精品免视看动漫| 区亚洲欧美一级久久精品亚洲精品成人网久久久久 | 狠狠色婷婷久久一区二区三区| 久久综合视频网站| 99国产欧美久久久精品蜜芽| 无夜精品久久久久久| 久久99精品久久久久久噜噜 | 狠狠色丁香久久婷婷综合蜜芽五月| 久久久九九有精品国产| 久久久久亚洲av无码专区喷水| 欧洲国产伦久久久久久久| 91久久精品电影| 91精品国产高清久久久久久io| 97视频久久久| 精品多毛少妇人妻AV免费久久 | 国产综合久久久久久鬼色| 精品久久久无码21p发布| 人妻无码精品久久亚瑟影视| 理论片午午伦夜理片久久| 久久精品亚洲乱码伦伦中文| 精品国产乱码久久久久久浪潮| 91精品国产91久久久久久青草| 久久se精品一区精品二区| 精品午夜久久福利大片| 欧美亚洲另类久久综合| 久久不见久久见免费影院www日本| 国产精品成人99久久久久| 久久精品国产第一区二区| 日日狠狠久久偷偷色综合0|