CF1408 - Clusterization Counting
CF1408 - Clusterization Counting
题目大意
给定$n$个点无向带权完全图,求将这些点分组,使得 组内的边边权 都小于 组内点连到组外点的边权
保证边权不同
分析
考虑如何确定合法的分组
从小到大依次加入每一条边,则一个合法的分组一定在某一个时刻满足
1.这个分组是一个极大的连通块
2.这个分组是一个团
dp
考虑类似$\text{Kruskal}$重构树的方法,对于合并的过程转化为树形结构
此时,分组决策只有两种
1.这个点儿子内部分别分组,背包合并
2.如果这个点恰好是合法的分组,那么选择这个点建立新的分组,并且此时儿子必须都是散点
借用树形背包的复杂度分析,$dp$部分复杂度为$O(n^2)$
排序可以桶排
1 |
|