• <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ù)組的應用。每次在某個點上增加一個值,或是詢問某塊區(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 閱讀(264) 評論(0)  編輯 收藏 引用 所屬分類: 題目分類:數(shù)據(jù)結(jié)構(gòu)
            久久精品亚洲乱码伦伦中文| 久久久久久无码Av成人影院 | 久久精品国产WWW456C0M| 久久综合欧美成人| 欧美久久天天综合香蕉伊| 久久婷婷五月综合成人D啪| 久久精品国产亚洲av日韩| 亚洲精品高清久久| 午夜精品久久久久久中宇| 97精品伊人久久久大香线蕉| 久久精品极品盛宴观看| 亚洲精品国产成人99久久| AV无码久久久久不卡蜜桃| 精品久久久久久久久久久久久久久| 亚洲人AV永久一区二区三区久久 | 无码乱码观看精品久久| 国产精品久久久久久影院| 久久久久久综合网天天| 国产一区二区精品久久岳| 人妻无码中文久久久久专区| 国产福利电影一区二区三区,免费久久久久久久精 | 久久久久久久免费视频| 久久亚洲国产精品一区二区| 无码国内精品久久人妻| 久久亚洲sm情趣捆绑调教| 久久久精品久久久久特色影视 | 久久久黄片| 国产精品久久久福利| 人妻丰满AV无码久久不卡| 久久国内免费视频| 亚洲另类欧美综合久久图片区| 国产亚州精品女人久久久久久 | 99久久国产免费福利| 大伊人青草狠狠久久| 精品久久久久久久无码| 人妻无码中文久久久久专区| 久久亚洲私人国产精品vA| 精品少妇人妻av无码久久| 69久久夜色精品国产69| 亚洲国产天堂久久综合网站 | 久久久久一级精品亚洲国产成人综合AV区|