The $k$-forest problem asks to find $k$ forests in a graph $G$ maximizing the number of edges in their union. We show how to solve this problem in $O(k^3 \min\{kn, m\} \log^2 n + k \cdot{\rm MAXFLOW}(m, m) \log n)$ time, breaking the $O_k(n^{3/2})$ complexity barrier of previously known approaches. Our algorithm relies on three subroutines: the directed $k$-forest problem with bounded indegree condition, the $k$-pseudoforest problem, and the top clump computation.
翻译:$k$-森林问题要求在图$G$中寻找$k$个森林,以最大化其并集中的边数。我们展示了如何在$O(k^3 \min\{kn, m\} \log^2 n + k \cdot{\rm MAXFLOW}(m, m) \log n)$时间内解决该问题,从而突破了先前已知方法的$O_k(n^{3/2})$复杂度壁垒。我们的算法依赖于三个子程序:具有入度约束条件的有向$k$-森林问题、$k$-伪森林问题以及顶部簇计算。