另一种写法 但是意思相同 希望能给你提供帮助 从叶子节点开始处理 若叶子节点度数大于k 就删边 模拟一下倒推回根节点 ``` void dfs(int u, int fa) { cnt[u] = (fa > 0); for(auto v : e[u]) { if(v == fa) continue; dfs(v, u); cnt[u] ++; } if(cnt[u] > k) res += cnt[u] - k, cnt[fa] --; //因为下面的树怎么砍都无法对上面做贡献了 所以度数只需要对fa -1 } ```
1

相关推荐

12-07 10:09
复旦大学 Java
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
10-29 21:14
疯犬丨哈士奇:喜欢你的人会主动表白,对你有想法的人会很主动,所以要你的公司不会吊着你所以懂了吧
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务