考虑 min-max 容斥,那么我们先对每个点集计算最早访问到该点集内的点的期望时间。然后使用高维前缀和即可将子集求和。
这个问题是典型的树上游走问题,考虑 DP,设 $f(u)$ 表示从结点 $u$ 出发走到 $S$ 中任意点的期望步数。
那么有
$$
f(u) = \frac 1{\deg_u} \left(f(\mathrm{fa}_u) + \sum_{v \in \mathrm{son}_u} f(v)\right) + 1
$$
看起来转移有环,但是实际上在树上可以用待定系数解决这样一个 DP。
设
$$
f(u) = k_u f(\mathrm{fa}_u) + b_u
$$
那么有 $$ \begin{aligned} f(u) &= \frac 1{\deg_u} \left(f(\mathrm{fa}_u) + \sum_{v \in \mathrm{son}_u} f(v)\right) + 1 \\ &= \frac 1{\deg_u} \left(f(\mathrm{fa}_u) + \sum_{v \in \mathrm{son}_u} (k_v f(u) + b_v)\right) + 1 \\ \deg_u f(u) &= f(\mathrm{fa}_u) + \sum_{v \in \mathrm{son}_u} (k_v f(u) + b_v) + \deg_u \\ &= f(\mathrm{fa}_u) + f(u) \sum_{v \in \mathrm{son}_u} k_v + \sum_{v \in \mathrm{son}_u} b_v + \deg_u \\ \left(\deg_u - \sum_{v \in \mathrm{son}_u} k_v\right) f(u) &= f(\mathrm{fa}_u) + \sum_{v \in \mathrm{son}_u} b_v + \deg_u \\ f(u) &= \frac 1{\deg_u - \sum_{v \in \mathrm{son}_u} k_v} \cdot f(\mathrm{fa}_u) + \frac{\deg_u + \sum_{v \in \mathrm{son}_u} b_v}{\deg_u - \sum_{v \in \mathrm{son}_u} k_v} \end{aligned} $$
于是这样枚举所有 $S$ DP 即可,复杂度 $O(n 2^n \log P)$,其中 $P = 998244353$。