摘要:
Kruskal重构树学习笔记 为做 "这道题" ,特意去学了一波Kruskal重构树。 以下写写学习心得: 首先像Kruskal一样按权值排序, 不过将Kruskal生成树的并查集合并操作改为了 新建点,为合并的两点的父亲,点权为加入的边的权值的操作 ~~作者不要脸地剽图了~~ 变为: 有一些性质: 阅读全文
摘要:
Speed Dial题解 和 "这道题" 差不多: 不过主要要想到建一棵Trie树,就成了树型DP了。 直接放代码吧: cpp include define ll long long using namespace std; const int N=506,K=12; int n,k,p=1,t,l 阅读全文
摘要:
Riv 河流题解 从 "这道题" 来的,做法差不多: 我们可以将题目转化一下: 求出原来全送到0点的费用sum,再看看多建k个伐木场最多能减少多少费用, 设$f[i][j][k]:$为在i节点,最近的伐木场离i的距离为(祖辈里),子树内建k个伐木场的最大能减少的费用: 我们考虑每个点i对伐木场x的贡 阅读全文