【CF1007D】Ants(树链剖分+2-SAT) 有一棵nn个点的树。 你需要进行mm次染色操作,每次操作给定两个点对(x1,y1)(x1,y1)和(x2,y2)(x2,y2),你需要选择一个点对将对应树上路径中的边全部染上颜色。要求同一条边不能被重复染色。 求一种合法方案。 2≤n≤1052≤n≤105,1≤m≤1041≤m≤104 2-SAT...
这道题本身并不难,这里只是记录一下 2-SAT 的前缀优化建图的相关内容。由于问题的本质是给定许多二元集合,判断是否能从每一个二元集合中选出一个元素,使得所有选出的元素合法,因此考虑使用 2-SAT 解决该问题。不难发现,使用 2-SAT 解决该问题的复杂度瓶颈在于建图。
[CF1007D]Ants[2-SAT+树剖+线段树优化建图] 题意 我们用路径 \((u, v)\) 表示一棵树上从结点 \(u\) 到结点 \(v\) 的最短路径。 给定一棵由 \(n\) 个结点构成的树。你需要用 \(m\) 种不同的颜色为这棵树的树边染色,在这 \(m\) 种颜色中,第 \(i\) 种颜色有两条备选路径 \((a...