全部评论 7

  • 我超,Chtholly

    昨天 来自 广东

    1
  • 宝宝你是一个一个一个

    struct seg{int l,r,v;bool operator<(const seg&x)const{return l^x.l?l<x.l:r<x.r;}};
    struct qry{int a,b,c,v;bool operator<(const qry&x)const{return a^x.a?a<x.a:b^x.b?b<x.b:c^x.c?c<x.c:!v<!x.v;}}q[1000005],k[1000005];
    set<seg>odt;
    map<int,set<pii>>mp;
    int getpre(int x){
        auto [l,r,v]=*--odt.lower_bound({x,inf,0});
        if(l^x)return x-1;
        auto it=mp[v].find(mlp(l,r));
        return it!=mp[v].begin()?(*--it).second:0;
    }
    void modify(int x,int v=-1){
        if(v==-1)v=getpre(x);
        if(v^pre[x])q[++tot]={x,pre[x],t,-1},q[++tot]={x,pre[x]=v,t,1};
    }
    void split(int x){
        auto [l,r,v]=*--odt.lower_bound({x,inf,0});
        if(l^x)odt.erase({l,r,v}),mp[v].erase(mlp(l,r)),odt.insert({l,x-1,v}),odt.insert({x,r,v}),mp[v].insert(mlp(l,x-1)),mp[v].insert(mlp(x,r));
    }
    
    

    昨天 来自 广东

    0
  • d

    昨天 来自 浙江

    0
  • 世界上最幸福的女孩——珂朵莉树

    昨天 来自 浙江

    0
  • 大刘!!!

    2天前 来自 浙江

    0
  • 三体!!!

    2天前 来自 浙江

    0
  • 终末之诗都来了,你不是不玩吗

    2天前 来自 浙江

    0

热门讨论