把 ``(-tree[v].premin)/2+(tree[v].sufmax)/2`` 改成 ``(-tree[v].premin+1)/2+(tree[v].sufmax+1)/2`` 后仍然零分。
by lsj2009 @ 2023-09-19 10:28:16
把
```cpp
void upd_rev(int k) {
swap(tree[k].premax,tree[k].sufmax);
swap(tree[k].premin,tree[k].premax);
tree[k].tag_rev^=1;
}
```
改成
```cpp
void upd_rev(int k) {
swap(tree[k].premax,tree[k].sufmax);
swap(tree[k].premin,tree[k].sufmin);
tree[k].tag_rev^=1;
}
```
后仍然零分。
by lsj2009 @ 2023-09-19 10:33:47
调出来了,swap 操作时没有交换左右儿子,在此警示后人。
by lsj2009 @ 2023-09-19 11:17:13