Solution - CF1681F Unique Occurrences

CF1681F Unique Occurrences

idea

栈,深搜,dp

解决

首先容易想到转化为求每条边的贡献。

一条颜色为 cc 的边的贡献就是,从它左端点开始的不经过颜色为 cc 的边的连通块的节点数乘上右端点…的节点数。

树形 dpdp ,每个节点的颜色设为它通向父亲的边的颜色,开个栈维护上个出现该颜色边的节点即可。两遍 DfsDfs ,时间复杂度 O(n)O(n)