P3441 MET-Subway 题解

传送门

题意:给定一棵树,选 \(m\) 条路径,最大化覆盖的点个数。\(n\le 10^6\)

容易想到每次选两个叶子是最优的。

假设有 \(l\) 个叶子,就会选 \(\min(2m,l)\) 个叶子。进一步地,叶子的父亲们也会覆盖 \(\min(2m,cnt)\) 个 ……

从叶子出发进行拓扑排序,求出每个结点所属的层级。记 \(cnt[i]\) 为第 \(i\) 层的结点个数。则 \(ans=\sum \min(2m,cnt[i])\)

posted @ 2024-11-12 16:09  FLY_lai  阅读(5)  评论(0编辑  收藏  举报