[2020HDU多校]Total Eclipse 并查集
题意:
n个点的图,每个点有点权,每次选取一个联通分量,然后其中每个点点权-1,点权不能为负,求最少需要操作的次数
分析:
一开始用dp搞的,然后一直wa,其实这道题是并查集,看到连通分量应该想到的,还是题做少了。
因为这个题是从小到大删的点,我们可以逆向考虑,点权从大到小加入点,每加入一个点u,贡献就是(u所连接的连通分量的个数 - 1) * u的点权。
代码:
#include<bits/stdc++.h>
#define mem(a, b) memset(a, b, sizeof(a))
原创
2020-07-23 21:27:20 ·
464 阅读 ·
0 评论