如果你写的 FHQ Treap:
有的节点左右儿子可能为空,但是 pushup 时会把空节点的最大子段和 000 给更新到这个节点上。但是有时整个区间的答案并不一定 ≥0\ge 0≥0。所以建议给空节点的最大字段和设置为 -INF。
pushup
-INF
对此建议拿个样例测测:
1 1 -1 MAX-SUM
pushdown 时也可能会更新到空节点,请注意特判,不要影响到为了正确的 pushup 而设置的空节点特殊值。
pushdown