zoukankan      html  css  js  c++  java
  • hdu_2871

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<algorithm>
    #include<set>
    #include<cmath>
    #define lson r,m,rt<<1
    #define rson m+1,r,rt<<1|1
    const int maxn=55555;
    using namespace std;
    int lsum[maxn<<2],rsum[rt<<2],sum[rt<<2];
    void pushUp(int rt,int m)
    {
        rsum[rt]=rsum[rt<<1|1];
        lsum[rt]=lsum[rt<<1];
        if(lsum[rt]==(m-m>>1))
            lsum[rt]=lsum[rt]+lsum[rt<<1|1];
        if(rsum[rt]==m>>1)
            rsum[rt]=rsum[rt]+rsum[rt<<1];
        sum[rt]=max(max(rsum[rt],lsum[rt]),max(max(sum[rt<<1],sum[rt<<1|1]),rsum[rt]+lsum[rt<<1|1]));
    }
    build(int l,int r,int rt)
    {
        if(l==r)
        {
            lsum[rt]=rsum[rt]=sum[rt]=1;
            return ;
        }
        int m=(l+m)>>1;
        build(lson);
        build(rson);
        pushUp(rt,r-l+1);
    }
    int main()
    {
        int n,m;
        while(scanf("%d%d",&n,&m)!=EOF)
        {
            build(1,n,1);
            for(int i=0;i<m;i++){
                char str[10];
                int d;
                scanf("%s",str);
                if(str[0]=='N')
                    update()
            }
        }
        return 0;
    }
    

  • 相关阅读:
    window.location.reload();页面实现跳转和刷新
    vue自定义指令--directive
    1019 数字黑洞
    1018 锤子剪刀布
    1017 A除以B
    1016 部分A+B
    1015 德才论
    1014 福尔摩斯的约会
    1013 数素数
    1012 数字分类
  • 原文地址:https://www.cnblogs.com/vactor/p/4099976.html
Copyright © 2011-2022 走看看