• <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
            二維樹狀數(shù)組的應(yīng)用。每次在某個點上增加一個值,或是詢問某塊區(qū)域內(nèi)的和。
            以下是我的代碼:
            #include<iostream>
            #include
            <string>
            #include
            <algorithm>
            #include
            <cstdio>
            #include
            <cstring>
            #define lowbit(x) ((x)&(-(x)))
            using namespace std;
            const int n(1001);

            int bit[n+7][n+7];
            bool bright[n+7][n+7];

            void Add(int x,int y,int delta)
            {
                
            for(int i=x;i<=n;i+=lowbit(i))
                    
            for(int j=y;j<=n;j+=lowbit(j))
                        bit[i][j]
            +=delta;
            }

            int Sum(int x,int y)
            {
                
            int re(0);
                
            for(int i=x;i>0;i-=lowbit(i))
                    
            for(int j=y;j>0;j-=lowbit(j))
                        re
            +=bit[i][j];
                
            return re;
            }

            int main()
            {
                memset(bit,
            0,sizeof(bit));
                memset(bright,
            false,sizeof(bright));

                
            int m;
                cin
            >>m;
                
            while(m--)
                {
                    
            string cmd;
                    cin
            >>cmd;
                    
            if(cmd=="B")
                    {
                        
            int x,y;
                        scanf(
            "%d%d",&x,&y);
                        x
            ++;y++;
                        
            if(!bright[x][y])
                            Add(x,y,
            1);
                        bright[x][y]
            =true;
                    }
                    
            else if(cmd=="D")
                    {
                        
            int x,y;
                        scanf(
            "%d%d",&x,&y);
                        x
            ++;y++;
                        
            if(bright[x][y])
                            Add(x,y,
            -1);
                        bright[x][y]
            =false;
                    }
                    
            else if(cmd=="Q")
                    {
                        
            int x1,y1,x2,y2;
                        scanf(
            "%d%d%d%d",&x1,&x2,&y1,&y2);
                        x1
            ++;y1++;x2++;y2++;
                        
            if(x1>x2)
                            swap(x1,x2);
                        
            if(y1>y2)
                            swap(y1,y2);
                        printf(
            "%d\n",Sum(x2,y2)-Sum(x1-1,y2)-Sum(x2,y1-1)+Sum(x1-1,y1-1));
                    }
                }

                
            return 0;
            }
            posted on 2011-07-31 09:29 lee1r 閱讀(258) 評論(0)  編輯 收藏 引用 所屬分類: 題目分類:數(shù)據(jù)結(jié)構(gòu)
            久久99精品国产一区二区三区| 伊人久久大香线蕉综合网站| 久久午夜综合久久| 99久久国产免费福利| 99久久www免费人成精品 | 国产亚洲美女精品久久久2020| 91精品国产91久久| 91久久精品国产免费直播| 国产精品一区二区久久| 狠狠色婷婷综合天天久久丁香| 久久国产精品久久精品国产| 久久婷婷国产麻豆91天堂| 久久免费线看线看| 久久久久国产一区二区三区| 色综合久久88色综合天天 | 亚洲精品WWW久久久久久 | 久久久这里只有精品加勒比| 久久久久久亚洲精品影院| 欧美亚洲国产精品久久高清| 久久婷婷国产剧情内射白浆| 亚洲va国产va天堂va久久| 国产精品青草久久久久婷婷| 久久香蕉综合色一综合色88| 日韩欧美亚洲综合久久影院Ds | 无码AV中文字幕久久专区| 国产精品久久久久天天影视| 久久97久久97精品免视看| 久久久久se色偷偷亚洲精品av| 久久久久久久久久久久中文字幕 | 久久久久无码精品国产不卡| 久久婷婷国产麻豆91天堂| 亚洲精品第一综合99久久| 久久国产精品成人影院| 久久精品免费大片国产大片| 精品久久久无码人妻中文字幕 | 久久天天躁狠狠躁夜夜av浪潮| 欧美久久久久久| 久久综合九色综合97_久久久| 伊人情人综合成人久久网小说 | 久久精品国产精品青草| 久久久久人妻一区精品|