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

心如止水
Je n'ai pas le temps
posts - 400,comments - 130,trackbacks - 0
經(jīng)典的區(qū)間合并題。
參考這篇文章學(xué)習(xí)的,http://www.notonlysuccess.com/?p=978
以下是我的代碼:
/*
 * Author:  lee1r
 * Created Time:  2011/8/4 18:38:40
 * File Name: poj3667.cpp
 
*/
#include
<iostream>
#include
<sstream>
#include
<fstream>
#include
<vector>
#include
<list>
#include
<deque>
#include
<queue>
#include
<stack>
#include
<map>
#include
<set>
#include
<bitset>
#include
<algorithm>
#include
<cstdio>
#include
<cstdlib>
#include
<cstring>
#include
<cctype>
#include
<cmath>
#include
<ctime>
#define L(x) ((x)<<1)
#define R(x) ((x)<<1|1)
#define Half(x) ((x)>>1)
#define lowbit(x) ((x)&(-(x)))
using namespace std;
const int kInf(0x7f7f7f7f);
const double kEps(1e-11);
typedef 
long long int64;
typedef unsigned 
long long uint64;

const int kMaxn(50007);

struct Node
{
    
int a,b;
    
int max,lmax,rmax;
    
bool cover;
};

int n,m;
Node tree[kMaxn
<<2];

void Build(int node,int x,int y)
{
    tree[node].a
=x;
    tree[node].b
=y;
    tree[node].max
=tree[node].lmax=tree[node].rmax=y-x+1;
    tree[node].cover
=false;
    
if(x<y)
    {
        
int m(Half(x+y));
        Build(L(node),x,m);
        Build(R(node),m
+1,y);
    }
}

void PushDown(int node)
{
    
if(!tree[node].cover)
        
return;
    tree[node].cover
=false;
    tree[L(node)].cover
=tree[R(node)].cover=true;
    
if(tree[node].max)
    {
        tree[L(node)].max
=tree[L(node)].lmax=tree[L(node)].rmax=tree[L(node)].b-tree[L(node)].a+1;
        tree[R(node)].max
=tree[R(node)].lmax=tree[R(node)].rmax=tree[R(node)].b-tree[R(node)].a+1;
    }
    
else
    {
        tree[L(node)].max
=tree[L(node)].lmax=tree[L(node)].rmax=0;
        tree[R(node)].max
=tree[R(node)].lmax=tree[R(node)].rmax=0;
    }
}

void PushUp(int node)
{
    tree[node].max
=max(tree[L(node)].max,tree[R(node)].max);
    tree[node].max
=max(tree[node].max,tree[L(node)].rmax+tree[R(node)].lmax);
    
if(tree[L(node)].max==tree[L(node)].b-tree[L(node)].a+1)
        tree[node].lmax
=tree[L(node)].max+tree[R(node)].lmax;
    
else
        tree[node].lmax
=tree[L(node)].lmax;
    
if(tree[R(node)].max==tree[R(node)].b-tree[R(node)].a+1)
        tree[node].rmax
=tree[L(node)].rmax+tree[R(node)].max;
    
else
        tree[node].rmax
=tree[R(node)].rmax;
}

void Modify(int node,int x,int y,int sign)
{
    
int len(tree[node].b-tree[node].a+1);
    
if(x<=tree[node].a && tree[node].b<=y)
    {
        tree[node].cover
=true;
        
if(sign==0)
            tree[node].max
=0;
        
else
            tree[node].max
=len;
        tree[node].lmax
=tree[node].rmax=tree[node].max;
        
return;
    }
    PushDown(node);
    
int m(Half(tree[node].a+tree[node].b));
    
if(m>=x)
        Modify(L(node),x,y,sign);
    
if(m<y)
        Modify(R(node),x,y,sign);
    PushUp(node);
}

int Query(int node,int need)
{
    
if(tree[node].max<need)
        
return 0;
    
if(tree[node].a==tree[node].b)
        
return tree[node].a;
    PushDown(node);
    
if(tree[node].lmax>=need)
        
return tree[node].a;
    
if(tree[L(node)].max>=need)
        
return Query(L(node),need);
    
if(tree[L(node)].rmax+tree[R(node)].lmax>=need)
        
return tree[L(node)].b-tree[L(node)].rmax+1;
    
return Query(R(node),need);
}

int main()
{
    
//freopen("data.in","r",stdin);
    
    
while(scanf("%d%d",&n,&m)==2)
    {
        Build(
1,1,n);
        
        
while(m--)
        {
            
int cmd;
            scanf(
"%d",&cmd);
            
if(cmd==1)
            {
                
int a,result;
                scanf(
"%d",&a);
                result
=Query(1,a);
                printf(
"%d\n",result);
                
if(result)
                    Modify(
1,result,result+a-1,0);
            }
            
else
            {
                
int a,b;
                scanf(
"%d%d",&a,&b);
                Modify(
1,a,a+b-1,1);
            }
        }
    }
    
    
return 0;
}
posted on 2011-08-17 20:02 lee1r 閱讀(665) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 題目分類:數(shù)據(jù)結(jié)構(gòu)
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            中文欧美在线视频| 夜夜爽www精品| 欧美大片在线观看一区| 久久综合久久久久88| 久久成人免费日本黄色| 亚洲直播在线一区| 久久精品123| 欧美成人精品福利| 欧美三级网址| 国产情人综合久久777777| 国产午夜精品在线观看| 国产日韩欧美91| 在线观看欧美| 国产精品99久久久久久久vr | 亚洲国产中文字幕在线观看| 亚洲激情一区二区| 亚洲午夜影视影院在线观看| 久久丁香综合五月国产三级网站| 乱人伦精品视频在线观看| 亚洲成色www8888| 亚洲国产精品久久久久秋霞不卡| 亚洲视频第一页| 久久女同精品一区二区| 欧美涩涩网站| 亚洲福利国产精品| 香蕉久久夜色精品国产| 亚洲国产cao| 欧美一区精品| 国产精品国产自产拍高清av| 亚洲成色www8888| 久久成人一区二区| 一本色道久久88综合亚洲精品ⅰ | 亚洲欧美日韩一区二区在线| 欧美高清视频| 尤物99国产成人精品视频| 亚洲制服丝袜在线| 亚洲日本久久| 每日更新成人在线视频| 国产亚洲欧美激情| 午夜精品久久久久久久久| 开心色5月久久精品| 亚洲影院色无极综合| 欧美日韩专区| 国产精品久久久999| 亚洲日本中文字幕免费在线不卡| 先锋资源久久| 亚洲婷婷综合久久一本伊一区| 久久免费黄色| 国内精品**久久毛片app| 亚洲欧美在线免费| 99精品欧美一区二区三区综合在线| 久久综合精品一区| 1000部国产精品成人观看| 久久蜜桃av一区精品变态类天堂| 亚洲女人av| 国产精品试看| 欧美一区二区啪啪| 亚洲欧美成人一区二区在线电影 | 国产毛片一区二区| 欧美一区二区三区在线播放| 亚洲性图久久| 国产精品美女久久久免费 | 亚洲综合99| 亚洲一区二区在线| 国产欧美va欧美不卡在线| 午夜精品视频在线观看| 亚洲女人av| 黑人一区二区三区四区五区| 久久夜色撩人精品| 老司机午夜精品视频| 亚洲人成网站色ww在线| 亚洲国产精品一区二区第一页| 欧美国产日产韩国视频| 亚洲一区二区三区影院| 亚洲免费在线看| 激情av一区| 91久久久国产精品| 国产精品久久久久久久久搜平片 | 国产精品久久久久久模特 | 亚洲伊人网站| 性做久久久久久久免费看| 狠狠色丁香久久综合频道| 欧美成人国产| 欧美午夜在线| 久久久久久久久久久久久女国产乱| 久久久久九九视频| 日韩亚洲欧美在线观看| 中国成人在线视频| 国内成人精品视频| 亚洲精品日韩精品| 国产日韩欧美三级| 亚洲国语精品自产拍在线观看| 国产精品va在线| 蜜桃久久av一区| 亚洲天堂av综合网| 国产一区二区成人久久免费影院| 欧美 日韩 国产一区二区在线视频 | 欧美专区18| 牛人盗摄一区二区三区视频| 亚洲一区国产视频| 久热爱精品视频线路一| 亚洲伊人伊色伊影伊综合网| 另类激情亚洲| 久久精品日产第一区二区三区| 欧美激情一区二区三区在线视频| 欧美在线综合视频| 欧美午夜久久| 亚洲国产裸拍裸体视频在线观看乱了| 国产精品美女一区二区| 亚洲激情视频在线播放| 激情成人av| 亚洲男同1069视频| 亚洲一级片在线看| 欧美国产视频在线| 久久综合九色九九| 国产亚洲精品v| 亚洲特黄一级片| 亚洲一区二区三区涩| 欧美成人激情视频免费观看| 老牛影视一区二区三区| 国产欧美一区二区白浆黑人| 99国产精品视频免费观看一公开| 激情成人av| 久久国产精品一区二区| 欧美一区二区私人影院日本 | 亚洲电影av| 久久久精品国产免费观看同学| 欧美一区二区三区的| 国产精品久久久久久av下载红粉| 亚洲精品国产精品国自产观看浪潮| 在线日韩视频| 久久亚洲一区二区三区四区| 久久一区激情| 一区二区在线免费观看| 欧美中文字幕视频| 久久在线91| 在线成人中文字幕| 久久久噜噜噜久久人人看| 久久一本综合频道| 亚洲国产日韩美| 欧美激情日韩| 亚洲免费观看高清完整版在线观看熊 | 另类天堂av| 亚洲动漫精品| 欧美大片一区二区三区| 亚洲激情在线播放| 99在线热播精品免费| 欧美日韩精品一区视频| 一区二区日韩伦理片| 性欧美精品高清| 黄色成人小视频| 欧美国产免费| 亚洲天堂激情| 久久尤物视频| 欧美午夜精品久久久久久浪潮 | 亚洲伊人一本大道中文字幕| 香蕉乱码成人久久天堂爱免费| 国产欧美一区视频| 麻豆成人在线| 一区二区三区日韩欧美精品| 欧美一级片在线播放| 亚洲第一福利在线观看| 欧美精品123区| 亚洲摸下面视频| 亚洲第一在线视频| 午夜精品福利视频| 亚洲国产二区| 欧美视频久久| 久久免费黄色| 亚洲一区美女视频在线观看免费| 久久蜜桃av一区精品变态类天堂| 亚洲人成高清| 国产三级欧美三级日产三级99| 久久亚洲风情| 亚洲在线播放电影| 亚洲韩国日本中文字幕| 久久久久久久999精品视频| 99精品热6080yy久久| 国产一区二区三区黄视频| 欧美久久久久中文字幕| 性欧美1819sex性高清| 亚洲国内欧美| 蜜桃久久精品乱码一区二区| 亚洲一区二区在线看| 在线观看国产精品网站| 国产精品国产三级国产专播精品人| 免费在线观看日韩欧美| 久久国产福利国产秒拍| 亚洲一区二区网站| 亚洲精品一区二区三| 欧美mv日韩mv国产网站app| 先锋亚洲精品| 亚洲一区二区不卡免费| 91久久精品国产91久久性色tv| 国产日韩高清一区二区三区在线| 欧美日韩国产成人在线| 蜜桃精品久久久久久久免费影院| 欧美一级片久久久久久久| 亚洲视频你懂的| 99国产精品久久久|