加法的懒标记更新时一定会先乘一次乘法的懒标记再累加,比如push_down中对懒标记的更新:
tre[pos].lazy_tag1= (tre[pos].lazy_tag1*add2+add1) %MOD;
tre[pos].lazy_tag2= (tre[pos].lazy_tag2*add2) %MOD;
还有乘法的更新中,加法懒标记也要乘上一次:
tre[pos].v= (tre[pos].v*add)%MOD;
tre[pos].lazy_tag1= (tre[pos].lazy_tag1*add)%MOD;
tre[pos].lazy_tag2= (tre[pos].lazy_tag2*add)%MOD;