pushdown写错了,应该打成:
```c
void pushdown(int p){
tr[p2].w=(tr[p].tmul*tr[p2].w+tr[p].tadd*(tr[p2].r-tr[p2].l+1))%mod;
tr[p3].w=(tr[p].tmul*tr[p3].w+tr[p].tadd*(tr[p3].r-tr[p3].l+1))%mod;
tr[p2].tmul=(tr[p2].tmul*tr[p].tmul)%mod;
tr[p3].tmul=(tr[p3].tmul*tr[p].tmul)%mod;
tr[p2].tadd=(tr[p2].tadd*tr[p].tmul+tr[p].tadd)%mod;
tr[p3].tadd=(tr[p3].tadd*tr[p].tmul+tr[p].tadd)%mod;
tr[p].tadd=0,tr[p].tmul=1;
}
```
by brown_me @ 2023-08-25 13:08:18