题解:CF1919D 01 Tree
CF1919D 01 Tree 模拟赛赛时做了一道非常类似的题,但题面是一条为 $0$ 的边和一条可能为 $0$ 或 $1$ 的边,修改合并条件后就能通过此题。 与现有题解做法均不同(雾),求通过。 思路 因为这道题目中的两条边都是固定的,所以为 $0$ 的节点一定有且仅有一个。 我们不考虑拆分点,而是合并点,将新点权设为。 发现两点之差为 $1$ 的时候就可以合并这两个点。 那我们考虑维护四个值:$l_{mi},l_{mx},r_{mi},r_{mx}$ 分别代表某个区间从左/右开始往中间合并能合并出的最大/小值。 显然最大值和最小值之间的所有值都是可以取到的。因为合并的值最大差值为 $1$,并且必须连续。 不妨维护多个区间的这四个值,判断可否合并,再判断最后剩下的那个区间最小值是否为 $0$ 即可。 具体的: 两个最小值显然都更新为合并完所有点后的值; 左/右最大值为左/右边区间的左/右最大值,因为它们显然无法变的更大,也不需要变小; 若一个区间的合并方向最大值加 $1$ 后还是小于另一个区间的合并方向最小值,显然无法合并。 若两个区间的合并方向的四个值均相等,则这两个值只能...