D. Sasha and a Walk in the City
题意:给定一棵树,问不存在三个点属于同一条路径的点集个数。
\(f[x]\) 表示,最近公共祖先为 \(x\) 的合法非空集数量。
-
如果选 \(x\),那么只能为不选子树或选一棵子树,否则 \(u \in subtree[y_1]\),\(v \in subtree[y_2]\) 与 \(x\) 共链。?
贡献为 \(1 + \sum_{y \in son[x]}f[y]\)。 -
如果不选,那么
贡献为 \(\prod_{y \in son[x]} (f[y] + 1) - \\sum_{y \in son[x]}f[y] - 1\)。