60分注意事项

P1253 扶苏的问题

lalaouye @ 2022-07-16 15:41:05

1.变在前加在后 2.谁被变了谁add就清空 3.ans=-1e15


by 小超手123 @ 2022-08-08 11:17:16

@lalaouye123 我也是这样干的只有60分


void maketag(int u,long long x,long long y){
    if(x!=1e18)w[u]=x;
    w[u]+=y;
    if(x!=1e18){
        layg[u]=x;  
        layj[u]=0; 
    }
    else{
        layj[u]+=y;
    }
}
void pushdown(int u,int L,int R){
    int mid=(L+R)/2;
    maketag(u*2,layg[u],layj[u]);
    maketag(u*2+1,layg[u],layj[u]);
    layg[u]=1e18;
    layj[u]=0;
}

|