qoj5092 森林游戏

为什么模拟赛题目要乱序放?T3<T1,T2 这一块。

考虑 \(maxdep=3\) 的情况,如果 \(A\) 选择了一个第二层的点 \(x\)\(B\) 一定会立即去选择 \(x\) 的点权大于 \(a_x\) 的儿子 \(y\)(如果有的话),接着如果 \(x\) 仍然有这样的儿子 \(A\) 会跟着选择,直到所有 \(x\) 的儿子点权都小于 \(a_x\) 停止。

在这个过程中我们可以把这些点权造成的贡献合并到 \(a_x\) 上,如果在 \(a_x\) 改变后要继续上述过程就反复迭代,直到初始状态完全转化为儿子的点权小于父亲。于是我们就可以将一个点 \(x\) 的儿子 \(y\) 的父亲更改为 \(fa_x\)

这个东西可以直接扩展到一棵一般树上,模拟即可做到 \(O(n^2\log n)\),随便用一种数据结构可优化至 \(O(n\log n)\)

可能带有一些 corner,例如 \(x\) 有奇数个儿子,且这些儿子的点权都大于它,那么这个点一定会留到最后,并对选择的人造成负贡献,这个也可以从叶子往上合并。

还是想说,这个东西真的比 T1 难吗?(虽然 T1 疑似是我犯唐,不管了)

posted @ 2026-01-08 18:59  wjwweiwei  阅读(3)  评论(0)    收藏  举报